10

我正在尝试使用 Angular Service Worker,一切正常,除了dataGroups不适合我。

这就是我的ngsw-config.json

{
  ...
  "dataGroups": [
    {
      "name": "api-performance",
      "urls": [
        "/shipments/**"
      ],
      "cacheConfig": {
        "strategy": "performance",
        "maxSize": 100,
        "maxAge": "3d"
      }
    }
  ]
}

在我的网络选项卡中,我看到服务人员总是进行服务器调用然后回退到缓存。见附图。

数据组 - 性能

请注意,我正在调用的 API 位于不同的服务器上,localhost 与 some-server:8000,我尝试使用不同的 URL 进行不同的操作: "/shipments/**" "/shipments" "http:some-server:8000/shipments/**"等等,但没有一个起作用。

我的环境:

  • @角5.1.1
  • 服务工作者 5.1.2
  • Angular-Cli 1.6.0
4

1 回答 1

8

我找到了一个解决方案,我的 api 和 ui 不在同一台服务器上,在同一台服务器上更改它们,并将配置更新为下面的代码,并在我的网站上使用 HTTPS,一切正常:

"dataGroups": [
    {
      "name": "api-performance",
      "urls": [
        "/shipments"
      ],
      "cacheConfig": {
        "strategy": "performance",
        "maxSize": 100,
        "maxAge": "3d"
      }
    }
  ]
于 2018-01-24T23:09:02.850 回答