今天调试的时候发现一个比较头疼的IE缓存问题。
我发送了个ajax请求,请求成功则往浏览器session里写更新一条数据。
再刷新页面时,因为session更新了所以这个页面上应该会出现一个新的条目。
但是在IE下并没有成功。不停的刷新都没有用,除非清空浏览器缓存。
一开始怀疑是ajax请求发送失败,但测试下来是成功的。
那是什么原因造成IE读取不了新的session呢?
后来通过查看net请求,发现IE在更新页面时读取的是浏览器缓存的页面session,而不是新session。
http响应为403,不是200。
这个问题在chrome、firefox等浏览器下并没出现。其他浏览器会自动更新缓存。
感觉我表达的不是很清楚……因为第一次碰到这问题,也不知道该怎么描述。
最后通过给ajax请求增加时间戳来强制让IE读取服务器发送过来的请求,而非浏览器缓存的请求。
2 responses to “IE缓存问题”
你的方法就是常规解决方法。
另外,浏览器的应该叫cookie,session是服务器端的叫法。
You are out.
What is a browser session storage?
Have a try at this demo.
And here comes a question. What’s the difference between cookie and localstorage?
Never missing this article.