【问题标题】:Offline web app using cache-control header?使用缓存控制标头的离线 Web 应用程序?
【发布时间】:2016-06-17 09:59:30
【问题描述】:

您好,我们有一个移动应用(iOS 和 Android)需要使用嵌入式 UIWebView 或 WebView 显示一些网页。这些页面需要支持离线浏览7-10天。我们正在考虑两种选择 - AppCache 和 cache-control 标头:

cache-control: max-age=604800

我们使用这两种方法运行了许多概念验证。这两种方法似乎都能满足我们的需要。缓存控制似乎有一点优势,我们可以在 Web 服务器配置中为所有 JS、CSS 和图像文件使用通配符设置它的值。至于缓存清单,我们需要单独列出每个文件。

说了这么多,我没有发现有人试图使用cache-control 构建离线应用程序。几乎所有文章和博客文章都使用 AppCache。我在这里缺少什么吗?

【问题讨论】:

    标签: html mobile-safari html5-appcache


    【解决方案1】:

    使用cache-control 离线的一个问题是用户需要在离开之前访问应用程序中的所有页面,否则他们将不会被缓存以供下次访问时使用。应用缓存列出了所有需要的页面并立即将它们全部缓存。

    cache-control 也并非旨在支持离线应用程序(看起来如此),并且存在一些问题,例如浏览器无法从some circumstances 的缓存中加载。所以你不能保证浏览器在离线时不会尝试发送资源请求(导致页面显示网络故障)。

    基本上,如果您希望它可靠地工作,您应该使用 App Cache 或 Service Worker。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-11-19
      • 1970-01-01
      • 2011-07-31
      • 1970-01-01
      • 2011-08-02
      • 1970-01-01
      • 1970-01-01
      • 2020-05-26
      相关资源
      最近更新 更多