【问题标题】:cache busters and cross-browser concerns缓存破坏者和跨浏览器问题
【发布时间】:2012-10-08 16:35:20
【问题描述】:

我加载 JavaScript 文件的代码是:

<script src="/path/to/app.js?1350550684711"></script>

其中1350550684711 只是服务器端生成的时间戳。这种缓存清除的做法非常流行(link 1link 2)。

在 Chrome 和 Firefox 中,这种机制有效,理论上它应该适用于所有浏览器,因为每次都请求不同的 HTTP 资源。

仍有用户使用 JS 文件的缓存版本的报告;特别是Apple Safari上的那些。有什么想法吗?

【问题讨论】:

    标签: http google-chrome caching safari cross-browser


    【解决方案1】:

    这可能意味着受影响的 Apple Safari 会重复使用包含 &lt;script 元素的 html 页面的缓存版本,因此它们自然不会从服务器获得新的时间戳。

    我在这里推测,但这可能是因为他们对 HTTP 缓存相关标头的解释不同,可能是由于不同的默认设置、离线浏览模式或其他原因。

    检查哪些缓存设置适用于该 html 文件。

    【讨论】:

      猜你喜欢
      • 2020-02-26
      • 2018-09-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-05
      • 1970-01-01
      相关资源
      最近更新 更多