【问题标题】:Cache manifest - edited pages not updating缓存清单 - 编辑的页面未更新
【发布时间】:2012-11-06 03:22:43
【问题描述】:

我在使用 appcache 时遇到问题。

我有它的工作,但它工作得太好了。我在 wordpress 上使用它,问题是浏览器正在提供缓存页面,所以当我更新/编辑页面并在浏览器中查看它时,它会显示一个缓存页面而不是新更新的页面(没有编号刷新页面的次数有帮助)。

有没有办法强制浏览器在线时使用非缓存页面?

我的缓存清单文件是这样的:

CACHE MANIFEST
#
# Version Control
# version 3 
#
CACHE:
/assets/css/app.css
/assets/css/bootstrap-responsive.css
/assets/css/bootstrap.css
/assets/js/main.js
/assets/js/plugins.js
/assets/js/vendor/jquery-1.8.2.min.js
/assets/js/vendor/modernizr-2.6.2.min.js
/assets/NRClogo_small.png
NETWORK:
*
FALLBACK:

我只需要在编辑时更新页面。有没有办法使用 javascript 来强制重新加载清单,或者每次用户访问网站时都重新加载清单?也许添加每 5 分钟到期的时间或什么? - 尽管清单仍然是相同的,所以它不会更新并且仍然会显示缓存的页面。

任何帮助将不胜感激,如果我不清楚任何事情或更多信息会有所帮助,请告诉我。

非常感谢。

阿里。

【问题讨论】:

    标签: wordpress html5-appcache


    【解决方案1】:

    当你在线时,这将更喜欢在线版本的东西:

    SETTINGS:
    prefer-online
    NETWORK:
    *
    

    【讨论】:

    • 非常感谢您的快速回复!赞赏。我已经尝试了您的解决方案,但它似乎不起作用。我在清单文件中的 NETWORK 调用上方(通配符 * 上方)添加了 SETTINGS: prefer-online,但什么也没有。仍然看到缓存的页面。我也更新了我的版本号,以便浏览器知道该文件的新下载到期。 windowevent.update() 的 javascript 调用可以工作吗?
    • 您好,我想补充一点,由于某种原因,当我添加 SETTINGS:prefer-online XXXX/SETTINGS: 第 36 行时,我的 .appcache 文件在 manifest-validator.com 中抛出错误: Resource not found XXXX/prefer-online 似乎看到了一个不存在的绝对 URL!对此有什么想法吗?如果没有设置,它会正确验证。
    • 看起来我是在 WHATWG 的规范中阅读的,直到它被添加到 W3C 的规范中,它才会出现在验证器中。但这并不意味着它可能不会在当今的浏览器中实现。
    • iOS 6.0.1 也有同样的问题,好像在 6.1 beta 中修复了这个错误
    猜你喜欢
    • 2017-05-24
    • 2013-01-21
    • 2013-11-13
    • 2013-05-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多