【问题标题】:PWA in angular configuration ngsw-manifest.json角度配置中的 PWA ngsw-manifest.json
【发布时间】:2017-10-01 17:17:21
【问题描述】:

您好,我想配置我的 PWA 应用程序。 我的应用程序运行良好,除了动态内容 api。在线时它工作正常,但是当我离线时,我从 serviceWorker 获得状态 503。 我的配置文件: ngsw-manifest.json

{
  "dynamic": {
    "group": [{
      "name": "api",
      "urls": {
        "https:url": {
          "match": "prefix"
        }
      },
      "cache": {
        "optimizeFor": "freshness",
        "maxAgeMs": 3600000,
        "maxEntries": 20,
        "strategy": "lru"
      }
    }]
  },
  "external": {
    "urls": [{
      "url": "https://fonts.googleapis.com/icon?family=Material+Icons"
    }]
  }
}

【问题讨论】:

  • 你可以参考这个thread,它指出通过创建动态缓存组,Service Worker 获取的匹配文件也会被缓存。这是由于 fetch 方法发出请求并使用来自服务器的实际响应(即 503)来解析承诺。因此,fetchFromCache 代码块永远不会执行,您只剩下 503。请参阅此link 中的说明。
  • 我找到了文件 freshness.ts 并将行更改为: if (rse.response === null || !rse.response.ok) {.... 再次构建后清除服务人员仍然相同错误还有其他我能做的吗?

标签: angularjs json progressive-web-apps


【解决方案1】:

如果您在 Firebase 上托管您的应用,您可能需要考虑使用新的 Firestore 数据库。它专为离线数据而设计。 Firebase 在离线模式下存在 PWA 问题。此外,PWA 的核心(ServiceWorker)已在 Angular 5 中重写。

【讨论】:

  • 角度 5 ?我使用其他服务器的 api。
猜你喜欢
  • 1970-01-01
  • 2019-01-08
  • 1970-01-01
  • 2019-09-22
  • 1970-01-01
  • 2018-02-22
  • 1970-01-01
  • 1970-01-01
  • 2020-01-20
相关资源
最近更新 更多