2

在 AJAX 服务器调用的末尾添加一个随机数究竟如何防止数据库服务器或浏览器(不完全确定是哪一个)缓存?为什么这行得通?

4

3 回答 3

4

它旨在防止客户端(或反向代理)缓存。

由于缓存将被锁定在确切的请求上,通过在请求中添加随机元素,确切的请求 URL 永远不会被看到两次;所以它不会被使用超过一次,而且智能缓存也不会费心保留那些从未被多次看到过的东西,至少不会持续很长时间。

于 2012-06-19T18:02:18.137 回答
2

这是为了防止您的浏览器(以及合理数量的网络代理)缓存请求。通常,一个查询参数——比如 ?rand2024= 告诉浏览器/代理发送转发请求,其中一个参数告诉你的应用程序行为不同。这就是为什么此类请求对破坏缓存有用的原因。

于 2012-06-19T18:00:48.933 回答
0

您的浏览器缓存由 URL 的确切文本键入的网页,因此添加随机数参数可确保 URL 每次都不同 - 因此没有真正的缓存。您的浏览器不知道服务器(希望)忽略此参数。

于 2012-06-19T18:03:40.033 回答