【发布时间】:2011-11-07 23:04:24
【问题描述】:
我正在尝试确定缓存清单是否可行。
我有一个大约有 5 个页面的移动网络应用程序。它们都需要连接才能以有意义的方式工作。
我想优雅地处理用户离线的可能性。
那么,当用户离线时,是否可以使用缓存清单将站点上的每个页面替换为另一个“仅离线”页面?
我希望这是缓存清单的 FALLBACK 部分所做的,但似乎不是。
【问题讨论】:
标签: html caching offline cache-control browser-cache
我正在尝试确定缓存清单是否可行。
我有一个大约有 5 个页面的移动网络应用程序。它们都需要连接才能以有意义的方式工作。
我想优雅地处理用户离线的可能性。
那么,当用户离线时,是否可以使用缓存清单将站点上的每个页面替换为另一个“仅离线”页面?
我希望这是缓存清单的 FALLBACK 部分所做的,但似乎不是。
【问题讨论】:
标签: html caching offline cache-control browser-cache
确实有效,您的后备部分应如下所示:
FALLBACK:
/ offline.html
如果您从根目录中的页面引用它,那么您输入的任何随机字符串都会导致加载offline.html,包括不存在的页面,无论服务器是否在线。
我猜你看到的问题是任何引用清单的页面都总是被缓存。因此,如果您从五个页面中的每个页面中都引用了清单文件,那么所有这些页面都将位于应用程序缓存中。
一种可行的方法(我没有尝试过):创建一个新页面,专门用于引用清单文件,并在用户第一次访问时将其重定向到该页面。您可以在页面上放置一些内容,例如“初始化应用程序”。验证应用程序缓存是否已加载 JavaScript,然后重定向回它们来自的页面。
【讨论】: