缓存Internet Explorer的Ajax错误

时间:2012-03-10 18:42:52

标签: jquery ajax asp.net-mvc-3 internet-explorer

最近在我的公司工作我意识到开始遇到一些基于部分视图返回html的方法的麻烦。问题特别是Internet Explorer没有加载更改,因为这些浏览器有一些配置保留在缓存中的信息,然后你无法看到基于局部视图的更改。此更改在其他浏览器(如firefox和chrome)中未受影响。

问题解决了,修改了Internet Explorer的选项并在浏览器客户端上检查了这个选项

enter image description here

因此。我有几个问题

  1. 我是否可以在javascript,html或jquery中使用一些配置或元标记来处理此类错误,而无需修改浏览器配置。
  2. 我可以在哪里找到有关此问题的文档

3 个答案:

答案 0 :(得分:1)

使用合适的Cache-Control / Expires标头投放HTML内容,以获得所需的缓存策略。用户设置适用于未指定任何特定策略的内容。

或者您当然可以在加载脚本中添加?randomtoken缓存破解程序以进行快速客户端修复。

答案 1 :(得分:1)

可能这不是一个错误它是一个功能:)(开玩笑)。 每次刷新页面时都尝试更改链接(部分视图...)。只需在链接末尾添加新内容即可。有点像随机数或白天第二......

1. request: http://www.test.com?nocache=12669
2. request: http://www.test.com?nocache=12789
...

答案 2 :(得分:1)

如果问题只与ajax相关...请尝试在ajax选项中设置cache:false。如果使用get()或load()等便捷方法可以使用$ .ajaxSetup()

全局执行此操作

http://api.jquery.com/jQuery.ajax/

http://api.jquery.com/jQuery.ajaxSetup/