欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

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

程序员文章站 2022-03-29 16:42:05
...
禁止ajax缓存最简单的办法就是在js端直接生成一个随机数了,但是有时会发现此方法不适用于post了,如果我们要禁止post 提交数据的ajax缓存需要怎么处理呢,下面我整理了很多关于禁止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()方法参数详解

ajax与传统web开发的异同点

SSH+Jquery+Ajax框架整合

以上就是在(ASP/PHP/JSP/html/js)中禁止ajax缓存的方法集锦的详细内容,更多请关注其它相关文章!