ajax解决缓存问题
2013-08-09 14:59
204 查看
在做一个AJAX处理,由于发送的ajax不只一个,一连发送好几个请求
在网速慢的时候,导致返回的数据重复
在网上找到一篇文章
[align=right]
[/align]
最佳答案
Javascript代码
xmlHTTP.setRequestHeader("If-Modified-Since","0");
xmlHTTP.setRequestHeader("If-Modified-Since","0");
也就是类似于这样:
Javascript代码
xmlHTTP.open("get", URL, true);
xmlHTTP.onreadystatechange = callHTML;
xmlHTTP.setRequestHeader("If-Modified-Since","0");
xmlHTTP.send();
xmlHTTP.open("get", URL, true); xmlHTTP.onreadystatechange = callHTML; xmlHTTP.setRequestHeader("If-Modified-Since","0"); xmlHTTP.send();
怎么样,很简单吧!!之前找的什么在URL家一个随即数什么的,我用了下,不是很好用。
现在就把使用的具体代码贴下来吧!!
在网速慢的时候,导致返回的数据重复
在网上找到一篇文章
做了一个聊天室,用setTimeout+AJAX来读取数据,当网速慢时同一句话会重复多次,网速好的时候就不会,这是为什么呢
[align=right]
[/align]
最佳答案
Ajax是会有这中问题,因为你的请求链接没有变,所以他不会每次都请求,而是使用缓存中的数据,最有可能是第一次请求的结果。 解决把法: 为请求链接设计变化的参数 var url = "request.php?date="+new Date(); 网速慢时数据更新慢,你的Ajax传的数据是重复的。我认为通过上面的设置变参的方式可以解决。 实质上一连发送好几个请求跟setTimeout+AJAX都有一个问题,一连串的发送数据 但是服务端并不是按这个顺序把数据处理完的 方法2: 请求的URL后面加上个随机数Math.random 缓存的问题 或者 xmlHTTP.setRequestHeader("If-Modified-Since","0"); 这样是正规的做法 再copy一篇文章 做一个项目用到Ajax,开始觉得挺好,后来发现一个问题,例如删除一项,恢复之后就不能再接着删除, 必须要等一段时间,后来知道是IE缓存的问题 AJAX缓存页面是一个刚接触AJAX的人一定会遇到的问题,造成这个问题的关键性人物又是Ie... 终于让我找到了一个好办法,那就在ajax发送请求前加上
Javascript代码
xmlHTTP.setRequestHeader("If-Modified-Since","0");
xmlHTTP.setRequestHeader("If-Modified-Since","0");
也就是类似于这样:
Javascript代码
xmlHTTP.open("get", URL, true);
xmlHTTP.onreadystatechange = callHTML;
xmlHTTP.setRequestHeader("If-Modified-Since","0");
xmlHTTP.send();
xmlHTTP.open("get", URL, true); xmlHTTP.onreadystatechange = callHTML; xmlHTTP.setRequestHeader("If-Modified-Since","0"); xmlHTTP.send();
怎么样,很简单吧!!之前找的什么在URL家一个随即数什么的,我用了下,不是很好用。
现在就把使用的具体代码贴下来吧!!
相关文章推荐
- Ajax缓存问题怎么解决?
- Query中ajax的使用与缓存问题的解决方法
- IE下Ajax缓存问题的快速解决方法(get方式)
- IE下Ajax缓存问题的解决办法
- Ajax缓存问题的解决方法汇总
- IE9下Ajax无法刷新数据的缓存问题解决方法
- AJAX 缓存问题的两种解决方法(IE)
- 解决使用Ajax时浏览器的缓存问题
- Ajax解决浏览器的缓存问题
- IE中ajax+jsp登录界面,由于缓存导致jsp过滤器与ajax请求被拦截的问题和解决
- Ajax页面缓存问题分析与解决办法
- ajax的初次使用与解决缓存问题
- jquery 请求ie缓存,数据不更新的问题【ajax禁用缓存解决ie数据不更新的问题】
- Query中ajax的使用与缓存问题的解决方法
- 解决ajax页面缓存的问题
- IE中ajax+jsp登录界面,由于缓存导致jsp过滤器与ajax请求被拦截的问题和解决
- 解决Ajax在IE浏览器中缓存问题
- Query中ajax的使用与缓存问题的解决方法
- AJAX 缓存问题的两种解决方法(IE)
- jQuery中ajax的使用与缓存问题的解决方法