日期:2014-05-16 浏览次数:20525 次
前几天在做东西的时候老是出现一人解决不了的问题,一直找不到原因,呵呵,今天看视频教程的时候终于找到问题所在了
解决使用ajax时浏览器的缓存问题
共有下面五种解决办法:
?
?
1,禁用浏览器缓存,访问网页速度变慢,客户不知道禁用
2,只发送post请求;
3,在请求地址中增加无意义的参数使地址每次不一样,如"?timestamp="+new Date().getTime();
url = 目标地址+请求参数
?
function addTimeParameter(url) { if(url.indexOf("?") != -1) { return url + "&t=" + new Date().valueOf(); } else { return url + "?t=" + new Date().valueOf(); } }?
4,在服务器端添加回应头内容,指明不使用缓存
?
response.addHeader("pragme", "no-cache"); response.addHeader("cache-control", "no-cache"); response.addHeader("expires", "0");
?5,在ajax发送请求前加上xmlHTTP.setRequestHeader("if-Modified-Since","0");
xmlHTTP.open("get",url,true); xmlHTTP.onreadystatechange = callHTML; xmlHTTP.setRequestHeader("if-Modified-Since","0"); xmlHTTP.send();?
以上方法亲试,均可用!
?
?
?