部署时有奇怪的Angular PWA服务工作人员行为

问题描述 投票:4回答:1

这个问题整天都用完了,我不知道发生了什么

[我可以看到我的服务工作者已注册,但是有时在开发人员工具中单击脱机时,我的域的ServiceWorker会消失!

但是这是我重新加载应用程序时遇到的以下主要问题。

您可以看到ngsw.json被加载了两次,main.js被加载了3次! main.d3ae2084xxxx && main.bbe5073dxxxx &&然后是main.d3ae2084xxxx!

enter image description here

[如果我检查两个ngsw.json请求的响应,您都可以看到它们都将main.d3ae2084xxxx显示为main.js的正确版本,但仍会加载main.bbe5073dxxxx ...

第一个ngsw.json请求

enter image description here

第二个ngsw.json请求

enter image description here

更令人沮丧的是,实际加载的版本是以前的main.bbe5073dxxxx ... !!!!

如果有人对如何实现此方法有任何想法,请告诉我。

Update ...因此找到了这个出色的小端点

https://you-app-url/ngsw/state 

这将为您提供有关服务工作者的许多调试信息。

就我而言]

驱动程序状态:EXISTING_CLIENTS_ONLY(由于失败而降级初始化:哈希不匹配(cacheBustedFetchFromNetwork):https://dev-xxxx.net/main.eb8468bb3ed28f02d7c2.js:预期b5601102b721e0cf777691d327dc965d40d1c96e,得到了83c18fdb4a5942c964a31c119a57e0b8e16fe46e(缓存清除后)

因此,在我看来,这将是CDN的某种问题,当我确定时会以答案进行更新。

这个问题已经用了一整天了,我不知道发生了什么,我可以看到我的服务人员已注册,但是当我在开发人员工具中离线单击时,有时是“ ...”]]

angular6 angular-service-worker angular-pwa
1个回答
0
投票

您可能现在已经解决了这个问题,但是我遇到了同样的问题,事实证明这是由于CDN(在我的实例中为Cloudflare)正在优化内容。

在Cloudflare中,关键选项是'自动缩小',需要将其禁用。

© www.soinside.com 2019 - 2024. All rights reserved.