IE浏览器缓存导致Ajax请求失败
2024-10-01 09:49:48
在IE浏览器中通过Ajax请求后台的数据,如果Page请求是postback类型的,可能会导致Ajax请求失败的问题
我们都知道ajax能提高页面载入的速度主要的原因是通过ajax减少了重复数据的载入,也就是说在载入数据的同时将数据缓存到内存中,一旦数据被加载其中,只要我们没有刷新页面,这些数据就会一直被缓存在内存中,当我们提交 的URL与历史的URL一致时,就不需要提交给服务器,也就是不需要从服务器上面去获取数据,虽然这样降低了服务器的负载提高了用户的体验,但是我们不能获取最新的数据,特别是那个实时的功能数据。为了保证我们读取的信息都是最新的,我们就需要禁止他的缓存功能。
解决方案有如下几种:
1、在ajax发送请求前加上 anyAjaxObj.setRequestHeader("If-Modified-Since","0")。
2、在ajax发送请求前加上 anyAjaxObj.setRequestHeader("Cache-Control","no-cache")。
3、在URL后面加上一个随机数: "fresh=" + Math.random();。
4、在URL后面加上时间搓:"nowtime=" + new Date().getTime();。
5、如果是使用jQuery,直接这样就可以了:$.ajaxSetup({cache:false})。这样页面的所有ajax都会执行这条语句就是不需要保存缓存记录了。
最新文章
- chrome 浏览器的预提取资源机制导致的一个请求发送两次的问题以及ClientAbortException异常
- 常见bug及解决方案
- 关于Ajax load页面中js部分$(function(){})的执行顺序
- Create,Insert
- 45. Jump Game II
- 自动备份并保存最近几天的SQL数据库作业脚本
- WiFi Test Entity
- target=_parent与target=_top的区别与用途
- 关于链接target的问题
- TCLP 第一章 1.5字符输入输出
- G - I Think I Need a Houseboat(简单题,粘贴下来是因为数据精度需要注意)
- radio的选中设置以及取值。
- Anroid ListView分组和悬浮Header实现
- BigInteger详解
- Ubuntu18安装Pycharm时遇到的几个问题
- Marriage Match III HDU - 3277(二分权值 + 拆点 建边)
- python3 特性
- Log4J日志整合及配置详解
- hdu1907 John 博弈
- FlashDevelop导入swc库