【问题标题】:Browser Cache control: Different behavior among Internet Explorer and Chrome浏览器缓存控制:Internet Explorer 和 Chrome 之间的不同行为
【发布时间】:2016-06-01 17:55:34
【问题描述】:

我一直在解决一个问题,以防止在单击浏览器后退按钮时提供缓存的服务器页面。通过This question 并设置适当的响应标头(如下)可以工作,但 IE 和 chrome 之间的行为不一致。

response.setHeader("Cache-Control", "no-cache, no-store, must-revalidate");
response.setHeader("Pragma", "no-cache");
response.setHeader("Expires", "0");

IE: 一旦我使用后退按钮返回页面,就会显示“网页已过期”

铬: 不会说页面过期,也不提供缓存页面,但即使在后退按钮上也会发出新的服务器请求 - 有点像点击刷新。

我的问题:这是它们对标题的响应方式吗?有没有办法获得一致的结果?主要目的是避免跨浏览器在返回按钮上提供缓存页面。

【问题讨论】:

    标签: google-chrome internet-explorer browser-cache cache-control


    【解决方案1】:

    嗯,其实我已经想通了。 Chrome 上的行为有所不同,因为 Chreme 开发工具栏上的浏览器设置显式禁用缓存,如下面的屏幕截图所示。这导致页面访问服务器而不是显示页面已过期。

    如果我禁用此选项,我会看到“确认重新提交表单”页面。

    【讨论】:

      猜你喜欢
      • 2017-03-31
      • 1970-01-01
      • 2015-10-11
      • 2015-08-17
      • 1970-01-01
      • 2013-09-23
      • 2011-07-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多