0

我有一个 chrome webstore 应用程序,我在其中使用 appcache 从缓存中加载资源。我已经在使用 localStorage 来离线获取数据。

使应用程序脱机工作的问题是,如果我重新加载页面(脱机时),浏览器会检查清单,并且由于它无法访问清单 uri,因此我在控制台中收到错误消息。而已。在这一点之外没有任何事情发生。该页面不呈现任何内容。

我不确定是否有办法解决这个问题(阻止浏览器在页面重新加载时检查清单)。无论如何,我想知道 - 这是让您的资产缓存并离线使用的唯一方法。数据不是问题;但是没有资产(主要是 JS),事情一动不动。

如果有人能建议/指出我正确的方向/方法,即使在页面重新加载/刷新时也能拥有一个功能齐全的离线应用程序,我会很高兴。

4

1 回答 1

1

要使此功能正常工作,您的离线网页需要可以使用清单缓存文件。当您说应用程序无法访问清单 URI 时,这是否意味着它是服务器上的绝对 URI 或其他什么?如果是这样,那就行不通了。

我在生产中有一些离线应用程序,我总是将缓存清单放在应用程序的根目录中,在我的网页中引用它:

<!DOCTYPE html> 
  <html manifest="./cache-manifest.manifest">
    <head>

缓存有效,应用程序离线,页面刷新不是问题。如果您想检查您的缓存是否正常工作,本文中的代码非常宝贵:

http://jonathanstark.com/blog/2009/09/27/debugging-html-5-offline-application-cache/

于 2011-06-29T10:26:15.063 回答