最近做了个项目,用了挺多ajax,在firefox下没有出现缓存问题,但是IE下测试却有比较严重的ajax缓存,数据总是滞后,查了些资料,整理了下Ajax缓存解决办法。
1、在服务端加 header(“Cache-Control: no-cache,must-revalidate”);
2、在ajax发送请求前加上 anyAjaxObj.setRequestHeader(“If-Modified-Since”,”0″);
3、在ajax发送请求前加上 anyAjaxObj.setRequestHeader(“Cache-Control”,”no-cache”);
4、在 Ajax 的 URL 参数后加上 “?fresh=” + Math.random(); //当然这里参数 fresh 可以任意取了
5、第五种方法和第四种类似,在 URL 参数后加上 “?timestamp=” + new Date().getTime();//目前采用的是这种方法,认为比较方便维护,效果也不错。
6、用POST替代GET:不推荐