【问题标题】:Google Chrome Manifest fetch failed (6)Google Chrome 清单提取失败 (6)
【发布时间】:2015-08-29 17:45:27
【问题描述】:

我正在重新设计我不久前制作的应用程序,使其也可以离线工作。当页面加载时,cache.manifest 被找到并正确缓存所有页面。但是,当我在未连接的情况下刷新页面时,会出现大量错误。

其中一个错误是Manifest fetch failed (6),根据this 的答案,这意味着NETWORK_ERROR。显然我没有连接到互联网,但这显然是让网站离线可用的重点,对吧?所有其他错误都来自我使用的一些文件,例如net::ERR_INTERNET_DISCONNECTED,但这些文件也在cache.manifest 中,所以对我来说这没有任何意义。

我也没有得到一个完全空白的页面。检查我的页面确实显示了我的索引页面,但似乎其他页面没有正确加载。

查看chrome://appcache-internals/,它也正确显示了缓存中的所有文件。

这就是我的cache.manifest 的样子:

CACHE MANIFEST

CACHE:
images/aRandomImage.jpg
bower_components/polymer/polymer.html
bower_components/polymer/polymer.js
bower_components/polymer/layout.html
#etc

可能还值得注意的是,我使用的是Polymer 0.5。我还尝试关闭在后台运行的 Chrome 并删除缓存文件夹,但无济于事。我错过了什么?

【问题讨论】:

    标签: google-chrome caching offline-caching


    【解决方案1】:

    检查以确保未在网络选项卡上选中disable cache

    Google Chrome Manifest fetch failed (6) 是 Chrome 在 appcache 触发 error 事件时抛出的错误(请参阅 this 以获得关于 appcache 事件的不错的入门知识)。当浏览器检测到您离线时,这是正常现象。

    但是,在这种情况下,浏览器通常仍会照常从应用缓存中加载资源。由于chrome://appcache-internals/ 显示了预期的内容,这让我相信您可能禁用了缓存。

    你是在本地主机还是远程机器上开发?

    【讨论】:

    • 我仔细检查了disable cache 被禁用。当我重新加载我的页面时,网络选项卡总是显示不同数量的正确加载的文件,而其他文件则没有。一次所有但一个都正确加载,另一次甚至没有一半。我目前在远程机器上,因为在本地测试我遇到了关于连接状态与服务器在线不同的问题,并且由于我遇到了这些奇怪的问题,我认为这可能是个问题。跨度>
    • 嗯。其他几个问题。您是否发送内容类型为“text/cache-manifest”的缓存清单?缓存清单中的所有资源是否都已成功检索?如果由于某种原因甚至一个失败,整个缓存过程都会失败。这也可能是一个奇怪的firewall 问题
    • 是的,我在.htaccess 中设置了内容类型,如下所示:AddType text/cache-manifest .manifest。当我检查清单的标题时,它是正确的类型。它还声明缓存成功并且在控制台中没有发现错误。我会调查防火墙问题。
    • 谢谢,“disable cache 未在网络选项卡上选中”让我很开心。
    【解决方案2】:

    我遇到了同样的问题,让我发疯了……但我发现我实际上是通过刷新页面来进行测试的,这使得缓存加载异常。

    要测试您的离线应用,您必须在每次测试时在 Android 上重新启动 Chrome。

    希望这会有所帮助

    【讨论】:

      【解决方案3】:

      此错误也可能是相关网站的 SSL 证书过期造成的。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2015-06-09
        • 2016-09-16
        • 2012-02-27
        • 2015-11-30
        • 1970-01-01
        • 1970-01-01
        • 2011-10-07
        相关资源
        最近更新 更多