IE浏览器ajax缓存问题

本文详细阐述了Ajax如何利用缓存加快数据请求,解释了浏览器默认缓存机制及为何可能遇到旧数据问题。通过添加随机参数和关闭jQuery缓存,我们提供了解决方法。

Ajax缓存原理

Ajax在发送的数据成功后,会把请求的URL和返回的响应结果保存在缓存内,当下一次调用Ajax发送相同的请求时,它会直接从缓存中把数据取出来,浏览器不会与服务器交互,提高页面的响应速度和用户体验。

ie浏览器默认开启ajax缓存,其他浏览器就不会,就是说当我们的ajax请求相同时浏览器会拿之前缓存的数据,请求不会发送到后台,如果后台的数据已经更新而我们拿到的还是旧数据,这样肯定是不行的。


解决方法

1、给url后面添加一个随机参数

  new Date().getTime()是获取1970年1月1日截止到现在时刻的时间的毫秒数,所以可以使浏    览器每次调用的url都不同。

"&time="+ new Date().getTime();

2.使用jQuery里面关闭ajax使用缓存的方法

$.ajaxSetup({cache: false}); //关闭ajax缓存

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值