Service Worker 缓存了错误的内容

Service Worker caching wrong content

我们有一个 angular 应用程序,其前端托管在 S3 中,后端托管在 EC2 中。 我们的云端有两个来源。任何带有 /api 的请求都将发送到我们的后端 EC2 源,而没有 /api 的请求将发送到 S3。 现在,我们看到一些没有 /api 的请求将转到 s3 并提供 index.html。我们联系了 AWS 支持,他们证明如果我们在浏览器中安装了 service worker,那么浏览器会在内部向云端发送 index.html 的请求。此行为是间歇性的,可以通过注销 service worker 来修复。但这不是找到所有用户并告诉他们注销 service worker 的选项。 想知道是什么导致了这个问题,以及这是怎么回事 solved.We 不想在我们的渐进式网络应用程序中摆脱 service worker。

这是通过更改 ngsw-config.json 的默认配置解决的。我们必须在 "datagroups" 下添加带有“/api”的 API。这解决了问题