ajax调用中ie缓存问题解决方法
本文实例分析了ajax调用中ie缓存问题解决方法。分享给大家供大家参考,具体如下:
ajax请求调用的过程中发现的问题:后台请求是一个简单的.aspx文件,而这个页面又没有考虑过缓存的影响,使用ajax调试的时候发现有时候根本不走后台代码直接返回结果了,所以估计是受到浏览器缓存的影响。网上搜了一下,果然是缓存的问题:“IE中如果XMLHttpRequest提交的URL与历史一样则使用缓存,根本不向服务器端提交。因此无法取到刚提交的数据或新的数据”。
解决方法大致有下面几种:
1、只改进服务器端
(1)后台是简单的.aspx文件,直接加上
(2)但是如果后台是.ashx文件通常在类里直接修改缓存设置。
2、只改进客户端
(1)利用加随机数或加时间戳改变请求地址
a、加随机数:
b、加时间戳:
这一种解决方案,只需要加个时间或随机数作为参数,服务器端不需要任何改动就可以达到目的。
(2)前台异步调用设置XMLHttpRequest对象的属性
在XMLHttpRequest发送请求之前加上
或者 ajaxObj.sendGet(其他参数列表,...."If-Modified-Since","0"); (get方式)
希望本文所述对大家ajax程序设计有所帮助。
相关文章
找到一款不错的基于AJAX留言板源码(PHP版、ASP版)提供下载了
找到一款不错的基于AJAX留言板源码(PHP版、ASP版)提供下载了...2007-09-09
最新评论