2014-02-26 55 views
13

编辑:我不得不删除一些链接。AppCache清单错误

我的清单页面似乎在我的网页上造成错误。当你第一次进入页面时,一切都显示成功缓存,但刷新后无法获取存在的文件。

我做了一个快速测试页来检查出来,在这里。

这是我的清单文件。

这是一个非常动态的网站,由php & javascript,我没有太多的appcache与这些因素,所以我不确定这个问题是否与如此多的内容必须有条件的事实设置英寸

任何帮助将不胜感激。注:将需要Java控制台(最好在Chrome中使用)。

UPDATE: 看来,如果出现任何文件,这么多,因为链接清单文件它接收出现错误。

的Java的控制台被连接到一个空的清单页面(而线)读取以下,成功后的缓存:

> Creating Application Cache with manifest 
> https://www.url.org/text/cache-manifest/manifest.appcache Application 
> Cache Checking event Application Cache Downloading event JQMIGRATE: 
> Logging is active Application Cache Progress event (0 of 0) 
> Application Cache Cached event GET 
> https://www.domain.org/images/backgrounds/gradient.png net::ERR_FAILED 
> GET https://www.domain.org/javascripts/pop_ups.js?_=1393453024093 GET 
> https://www.domain.org/javascripts/jquery_plugins/jquery.placeholder.js?_=1393453024094 

温暖。

回答

36

我解决了我自己的问题。我重新阅读了一些首先教我关于appcache的旧文章。原来是Gotcha #5

GOTCHA#5:非缓存的资源将不加载在缓存页面如果您 缓存的index.html但不cat.jpg,该图像不会在 显示的index.html即使你在线。不,真的,这是打算 行为,看看你自己。

要禁用此行为,使用清单

CACHE MANIFEST 
# v1index.html 
NETWORK: 
* 

的*的网络部分表明浏览器应该允许从缓存页面 非缓存资源的所有连接。在这里,你可以看到它适用于前面的例子 。显然,这些连接在离线时仍然会失败 。

我在清单&中添加了以下内容,现在一切正常。真厉害。

+2

令人惊叹。我天真地删除了*在网络中,直到我看到你的答案,我不知道它可能是相关的:D – amenadiel

+0

我很高兴我可以帮助其他人。^_^ –

+0

谢谢,谢谢! –