10

我遇到了 AJAX 和 Internet Explorer 9 的问题:它在收到对初始 etagged GET 的响应后停止轮询我们的服务器。

它假装发出带有响应的请求,例如“响应 HTTP/1.1 304 未修改,状态 200 OK”(是的,一个响应中有两个不同的状态代码)和相同的 ETag(应该随时间变化),但它们实际上都没有出现在服务器中日志。

此问题仅出现在 IE 中,相同的代码在 Chrome 和 FF 中运行良好。

也许将 {cache: false} 传递给 jQuery.ajax() 可能会有所帮助,但我想知道是否有办法在服务器端解决问题。

我们的 ETag 使用可能存在错误。

谢谢!

4

1 回答 1

6

我想这篇文章对你有用: http ://www.dashbay.com/2011/05/internet-explorer-caches-ajax/

问题在于 AJAX 缓存。对于必要的请求,您无论如何都应该禁止它。

于 2012-06-18T08:58:58.897 回答