发现AJAX 请求同一个url的时候,第二个请求并没有真正发到后台。
遂百度 Google,发现AJAX 对于相同的URL, 会缓存第一次执行的结果,所以接下来页面怎么刷新都不会真正发请求到后台,会一直用第一次的缓存结果。
如果想解决此现象有两种办法:
1. 相同url请求后面额外加上一个参数,该参数的值就取随机数保证每次url都不同。
2. 在后台返回的时候,response做如下操作:
response.setHeader("Pragma","No-cache");
response.setHeader("Cache-Control","no-cache");
response.setDateHeader("Expires", 0);

本文探讨了AJAX请求同一URL时出现的缓存问题,并提供了两种解决方案:一是通过为请求添加随机参数来确保每次请求的唯一性;二是通过设置响应头来禁止浏览器缓存。
242

被折叠的 条评论
为什么被折叠?



