在线时影响非 GET 请求的服务工作者 - @angular/pwa

service worker affecting non-GET requests when online - @angular/pwa

我在我的项目中添加了一个 service worker,GET 请求在线和离线都能完美运行。
但是我在线时遇到非 GET 请求的问题。
当我使用 http-server 加载网站时(激活 service worker),
服务工作者似乎拦截了它们。 并且它从不以相同的方法将 POST/DELETE 请求转发到服务器。
它不是向服务器发送 DELETE/POST 请求,而是向同一路径发送 GET 请求(这显然没有帮助) 当然,该项目不会被删除:

ngsw-config.json:

localhost:3000 是服务器。

当我使用 ng serve(没有 service-worker)加载网站时,一切正常。

谁能告诉我如何解决它?

为了从缓存中获取最新响应,您需要在 ngsw-config.json 文件中指定缓存策略(新鲜度或性能)。

assetGroups 键后添加 dataGroups:

"dataGroups": [{
    "name": "GiveAnySuitableName",
    "urls": [
      "/**",
    ],
    "cacheConfig": {
      "strategy": "freshness",
      "maxSize": 100,
      "maxAge": "3d",
      "timeout":"3s"
    }
  }
]

官方 angular PWA 文档:https://angular.io/guide/service-worker-config