在(ASP/PHP/JSP/html/js)中禁止ajax缓存的方法集锦
ajax缓存有好处,但也有坏处,缓存有时候会导致误操作,影响用户体验,若你的WEB项目不需要ajax缓存功能,可按下述方法来禁止ajax缓存。
一、在ASP中禁止ajax缓存:
'放在ASP网页最开头部分
Response.expires=0 Response.addHeader("pragma","no-cache") Response.addHeader("Cache-Control","no-cache,must-revalidate")
二、在PHP中禁止Ajax缓存:
//放在PHP网页开头部分 header("Expires:Thu,01Jan197000:00:01GMT"); header("Cache-Control:no-cache,must-revalidate"); header("Pragma:no-cache");
三、在JSp中禁止ajax缓存:
//放在JSP网页最开头部分 response.addHeader("Cache-Control","no-cache"); response.addHeader("Expires","Thu,01Jan197000:00:01GMT");
四、通过给网页添加随机字符强制更新:如
varurl='http://url/'; url+='?temp='+newDate().getTime(); url+='?temp='+Math.random();
五、若是静态HTML,可添加HTTPheaders头禁止缓存,比如:
<metahttp-equiv="pragma"content="no-cache"/> <metahttp-equiv="Cache-Control"content="no-cache,must-revalidate"/> <metahttp-equiv="expires"content="Thu,01Jan197000:00:01GMT"/> <metahttp-equiv="expires"content="0"/>
六、可以在XMLHttpRequest发送请求之前加上以下代码禁止ajax缓存:
XMLHttpRequest.setRequestHeader("If-Modified-Since","0"); XMLHttpRequest.send(null);
七、jQueryajaxLoad禁止
在jQuery提供一个防止ajax使用缓存的方法,把下面的语句加在head的javascript文件里,就可以解决问题。
$.ajaxSetup({ cache:false//关闭AJAX相应的缓存 });
小结,不过现在都是使用jqueryajax了我们如果不希望缓存可以直接设置cache:false这样可以解决post,get等提交数据方式哦。