在(ASP/PHP/JSP/html/js)中禁止ajax缓存的方法集锦

前端技术 2023/09/03 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, 01 Jan 1970 00:00:01 GMT\");

header(\"Cache-Control: no-cache, must-revalidate\");

header(\"Pragma: no-cache\");

三、在JSp中禁止ajax缓存:

 

//放在JSP网页最开头部分

response.addHeader(\"Cache-Control\", \"no-cache\");

response.addHeader(\"Expires\", \"Thu, 01 Jan 1970 00:00:01 GMT\");

四、通过给网页添加随机字符强制更新:如

var url = \'http://url/\';

url += \'?temp=\' + new Date().getTime();

url += \'?temp=\' + Math.random();

五、若是静态HTML,可添加HTTP headers头禁止缓存,比如:

<meta http-equiv=\"pragma\" content=\"no-cache\" />

<meta http-equiv=\"Cache-Control\" content=\"no-cache, must-revalidate\" />

<meta http-equiv=\"expires\" content=\"Thu, 01 Jan 1970 00:00:01 GMT\" />

<meta http-equiv=\"expires\" content=\"0\" />

六、可以在XMLHttpRequest发送请求之前加上以下代码禁止ajax缓存:

XMLHttpRequest.setRequestHeader(\"If-Modified-Since\",\"0\");
XMLHttpRequest.send(null);

七、jQuery ajax Load禁止

在jQuery提供一个防止ajax使用缓存的方法,把下面的语句加在head的javascript文件里,就可以解决问题。

$.ajaxSetup ({ 
  cache: false //关闭AJAX相应的缓存 
});


小结,不过现在都是使用jquery ajax了我们如果不希望缓存可以直接设置 cache: false 这样可以解决post ,get等提交数据方式哦。

本文地址:https://www.stayed.cn/item/7046

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。