IE下Ajax缓存问题的解决办法
来源:互联网 发布:python 支持中文 编辑:程序博客网 时间:2024/05/01 06:04
今天在做一个用ajax聊天的时候,在chrome浏览器中可以,但在IE下遭遇Ajax缓存戏弄(老是给出与上一次一样的结果),因为刚开始并不知道IE有这个坏毛病,总结一下解决办法:
在IE下用Ajax请求某一页面,通常会因为缓存的原因而返回上一次的结果,造成混乱,而FF下不会出现这种情况。为了不受缓存影响,可以这样做:
IE访问策略:Internet选项--浏览历史记录--设置-- Internet 临时文件的选项改为每次访问网页时也可以
1: 在AJAX请求的页面后加个随机函数,我们可以使用随机时间函数
在javascript发送的URL后加上t=Math.random()
例如这样:URL+"&"+"t="+Math.random();或者new Date();
2: 在XMLHttpRequest发送请求之前加上XMLHttpRequest.setRequestHeader("If-Modified-Since","0")
一般情况下,这里的XMLHttpRequest不会直接使用
你应该可以找到这样的代码
XXXXX.send(YYYYYY);
那么,就把它变成
XXXXX.setRequestHeader("If-Modified-Since","0");
XXXXX.send(YYYYYY);
实践证明,两种方法都非常有效。
1、在服务端加 header("Cache-Control: no-cache, must-revalidate");
2、在ajax发送请求前加上 xmlHttpRequest.setRequestHeader("If-Modified-Since","0");
3、在ajax发送请求前加上 xmlHttpRequest.setRequestHeader("Cache-Control","no-cache");
4、在 Ajax 的 URL 参数后加上 "?fresh=" + Math.random(); //当然这里参数 fresh 可以任意取了
5、第四种方法和第三种类似,在 URL 参数后加上 "?timestamp=" + new Date().getTime(); //推荐使用这种方式
6、用POST替代GET:不推荐
在IE下用Ajax请求某一页面,通常会因为缓存的原因而返回上一次的结果,造成混乱,而FF下不会出现这种情况。为了不受缓存影响,可以这样做:
IE访问策略:Internet选项--浏览历史记录--设置-- Internet 临时文件的选项改为每次访问网页时也可以
1: 在AJAX请求的页面后加个随机函数,我们可以使用随机时间函数
在javascript发送的URL后加上t=Math.random()
例如这样:URL+"&"+"t="+Math.random();或者new Date();
2: 在XMLHttpRequest发送请求之前加上XMLHttpRequest.setRequestHeader("If-Modified-Since","0")
一般情况下,这里的XMLHttpRequest不会直接使用
你应该可以找到这样的代码
XXXXX.send(YYYYYY);
那么,就把它变成
XXXXX.setRequestHeader("If-Modified-Since","0");
XXXXX.send(YYYYYY);
实践证明,两种方法都非常有效。
1、在服务端加 header("Cache-Control: no-cache, must-revalidate");
2、在ajax发送请求前加上 xmlHttpRequest.setRequestHeader("If-Modified-Since","0");
3、在ajax发送请求前加上 xmlHttpRequest.setRequestHeader("Cache-Control","no-cache");
4、在 Ajax 的 URL 参数后加上 "?fresh=" + Math.random(); //当然这里参数 fresh 可以任意取了
5、第四种方法和第三种类似,在 URL 参数后加上 "?timestamp=" + new Date().getTime(); //推荐使用这种方式
6、用POST替代GET:不推荐
- IE下Ajax缓存问题的解决办法
- IE下Ajax缓存问题的解决办法(get方式)
- IE下的AJAX缓存问题
- IE下ajax请求的缓存问题
- IE浏览器下AJAX缓存问题导致数据不更新的解决办法
- 解决IE下AJAX缓存问题的三种方法
- 关于ajax在IE下缓存的问题
- IE下Ajax缓存问题的快速解决方法(g…
- ie下使用ajax缓存问题
- AJAX缓存问题的解决办法
- ajax缓存问题的解决办法
- Ajax缓存问题的解决办法
- 禁止ie下的ajax 缓存
- 解决IE下jquery ajax无法获得最新数据的问题(IE缓存)
- AJAX缓存问题的解决方法(IE)
- 在ie中关于ajax请求获得数据缓存问题的解决办法
- ajax页面无刷新 IE下遭遇Ajax缓存导致数据不更新的问题
- IE下遭遇Ajax缓存导致数据不更新的问题 ajax页面无刷新
- tigger
- 批量修改表前缀功能~~~
- <为知更新>Preference的 相关类 及 常用方法
- 未能加载文件或程序集“App_Web_eez-t60x, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null”或它
- x264中两个重要的结构体x264_param_t和cli_opt_t
- IE下Ajax缓存问题的解决办法
- Tomcat6性能调优 出现java.lang.OutOfMemoryError: PermGen space
- KC伺服舵机带参四方向Demo程序
- WebService CXF学习(入门篇1):CXF由来
- Linux 信号signal处理机制
- 学懂linux命令(1) linux很简单
- 使用js实现两点之间距离计算功能
- java JDBC通用dao
- 使用js实现大小写字母转换功能