【问题标题】:Appcache files not updatedAppcache 文件未更新
【发布时间】:2013-10-06 04:05:48
【问题描述】:

情况

我正在构建一个可以离线使用但在线使用时也会定期更新的 web 应用。我通过添加包含 tstamp 的注释来使清单服务器端无效,然后在检测到更改后立即通过 JS 自动重新加载页面。到目前为止,这一切都很好。


问题

上述过程仍然完全执行,但由于某种原因,每次浏览器尝试获取新文件时,只加载旧资源。所以更新进度肯定是触发和工作(我可以从 chromes 控制台看出),但似乎在此过程中请求的文件是从 浏览器缓存(!= appcache)中检索的。

这种情况发生即使我之前删除了浏览器缓存。此外,我已经在使用几个反缓存元更改了 IIS 的失效标头以立即失效。


附加信息

当我手动删除应用程序缓存时,问题就解决了。但它会在一段时间后再次发生(不幸的是我不知道会触发这个)

【问题讨论】:

    标签: c# javascript caching offline-caching offlineapps


    【解决方案1】:

    您似乎希望在离线时使用缓存,而不是在您在线时使用?我不认为它会神奇地做到这一点......

    【讨论】:

    • 没有。我有一个更新逻辑,如上所述。问题是,这些文件在应该从服务器更新时,实际上只是从 浏览器缓存 转移到 离线缓存 (至少这就是 chromes控制台告诉我)
    • 在我掌握的信息有限的情况下,我会说您应该检查您的 HTTP 标头等,任何其他建议我需要更多信息。
    • 我会检查的。您还想要哪些其他信息?
    • 我刚刚发现控制台没有显示任何通过 appcache 进度下载的文件。这意味着我不知道资源是否真的从缓存中加载。另外,您能告诉我如何在没有该控制台的情况下检查 http 标头吗?
    猜你喜欢
    • 2012-05-31
    • 1970-01-01
    • 2015-10-18
    • 1970-01-01
    • 1970-01-01
    • 2014-11-09
    • 2015-07-02
    • 2014-09-04
    • 1970-01-01
    相关资源
    最近更新 更多