caching - 即使使用示例代码,PWABuilder 也会记录错误
问题描述
我正在尝试设置一个服务人员以允许我的 PWA 离线工作。我将 PWABuilder 与“带有备份脱机页面的脱机副本”策略一起使用。我已按照所有说明进行操作,对任一脚本的唯一更改是确保 service worker 脚本中的 URL 指向正确的脱机后备页面。
当我清除缓存和服务人员,然后在最新的稳定版 Chrome for Windows 上加载主页时,我看到几个控制台错误,并且该页面无法脱机工作(尽管它确实在角落显示了安装按钮)。
The service worker navigation preload request failed with network error: net::ERR_INTERNET_DISCONNECTED.
The FetchEvent for "https://example.com/starturl/" resulted in a network error response: the promise was rejected.
StaleWhileRevalidate.js:136 Uncaught (in promise) no-response: no-response :: [{"url":"https://example.com/starturl/","error":{}}]
我认为让起始 URL 与当前 URL 不同可能会导致问题,所以我尝试将其更改为/
但我遇到了同样的问题。我尝试用谷歌搜索错误,但没有找到任何相关信息。
当我加载一个子页面(也是起始 URL)时,我得到了额外的错误。
A bad HTTP response code (404) was received when fetching the script.
Uncaught (in promise) TypeError: Failed to register a ServiceWorker for scope ('https://example.com/starturl/') with script ('https://example.com/starturl/pwabuilder-sw.js'): A bad HTTP response code (404) was received when fetching the script.
我可以从该错误中看到它正在尝试从而https://example.com/starturl/pwabuilder-sw.js
不是https://example.com/pwabuilder-sw.js
. 这对我来说毫无意义,因为说明指出该文件应该位于根目录上,而且我什至没有在我的代码中的任何地方包含该 URL。
通过 Lighthouse 运行我的页面告诉我,我的清单没有任何问题,并且任何一个页面上都没有任何 JavaScript 干扰服务人员。我完全不知所措,因为我按原样使用示例代码(除了更改服务工作者中的 URL)。
如果有人知道为什么会发生这种情况,我会很乐意提供帮助。
解决方案
推荐阅读
- alexa - Alexa Skill - 如何获取要求 Alexa 的完整陈述文本
- xamarin.forms - 制作“吐司”
- php - 加载不同的blade.php后无法读取Auth::user()
- .htaccess - htaccess 以 root 身份重写子目录,如果直接访问子目录,也会重定向
- android - Cloud Firestore:FAILED_PRECONDITION:查询需要索引
- python-3.x - Scrapy:在带有断点的调试模式下正常工作,而在没有断点的情况下不能正常工作
- php - 无法将数据保存到 Mysql 数据库
- python - 在使用 odeint 求解 ODE 时查找执行时间
- javascript - 如何在下次单击数据表中的 ajax 调用时发送自定义标题?
- spring - 在 SAML SP 超时会话和 IDP 这样做之间应该发生什么?