把今天遇到的Ajax多次请求同一个URL返回相同值问题记录下....
今天用ASP写了一个AJAX的购物车程序,出现了一点的状况.请求页每次返回的结果都是一样的,我的本意是返回购物车的一些情况,但是只是第一次请求的时候返回值是正确的,后面再刷新页面,发出请求,返回的结果就跟第一次一样了...这个折磨了我一个上午,一开始以为是我的程序出了问题,但后来排除了这个可能.
后来找资料看了下,原来都是网页缓存惹的祸,因为每次我们请求的URL都是相同的,浏览器把对该URL的请求状态缓存为已完成了,也就是xmlHttp.readyState == 4,第二次请求等于没有发生.
解决方法:1.在请求的URL上加上一个随机数让每次请求的网址不一样
2.禁止被请求的页面缓存.我在文件头写了这第一句<%response.buffer=false%>,好像没有产生效果,后来我写成了<%response.Expires=0%>让页面立即过期就OK了...这个我就搞不懂了,为什么response.buffer=false不可以?