浅谈ajax的缓存机制
Ajax的缓存机制与浏览器处理资源的缓存机制相同。三条简单规则:
只要是同样的GET请求的URL,浏览器将使用缓存(和,当然,服务器的缓存控制 / / /到期的最后修改的ETag头设置)。
只要是POST请求,浏览器就不会缓存。
HTTPS的请求,浏览器将不会被缓存(大量的情况下,但也有例外,有人说,FF浏览器是一个例外)。
补充:
URL中的随机随机查询字符串可以使浏览器认为这是一个新请求,因此不使用缓存。
在Ajax请求中设置HTTP头:如果修改为:0,告诉服务器新内容。
补充说明:
在一般情况下,用户触发窗:F5 MacOS:命令+ R手动。浏览器忽略了缓存控制头的设置,并连接到服务器。这是页面刷新和Ajax刷新的例子。但是我听说IE浏览器不遵循这个规则。不知道IE浏览器的所有版本都是这样的。