在(ASP/PHP/JSP/html/js)中禁止ajax缓存的方法集锦
投稿:hebedich
禁止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了我们如果不希望缓存可以直接设置 cache: false 这样可以解决post ,get等提交数据方式哦。
您可能感兴趣的文章:
- Ajax+Servlet+jsp显示搜索效果
- 基于jsp的AJAX多文件上传的实例
- jsp页面 列表 展示 ajax异步实现方法
- JSP使用ajaxFileUpload.js实现跨域问题
- AJAX和JSP混合使用方法实例
- jsp+ajax实现无刷新上传文件的方法
- JSP+jquery使用ajax方式调用json的实现方法
- jsp+ajax实现的局部刷新较验验证码(onblur事件触发较验)
- jquery ajax 如何向jsp提交表单数据
- jsp实现checkbox的ajax传值实例
- jsp+ajax发送GET请求的方法
- 使用js声明数组,对象在jsp页面中(获得ajax得到json数据)
- jsp中利用jquery+ajax在前后台之间传递json格式参数
- ajax 提交数据到后台jsp页面及页面跳转问题