1

我正在从 v3 迁移到 v4 ,在我的 vuejs 应用程序中使用 workbox-window(CDN) 和 workbox-webpack-plugin。

它在本地使用 http-server 可以正常工作,但是在部署后,我收到此错误并且无法安装服务工作者。

print @ logger.mjs:44
(anonymous) @ logger.mjs:57
(anonymous) @ precache.mjs:23
Promise.catch (async)
installListener @ precache.mjs:20
PrecacheController.mjs:194 Uncaught (in promise) bad-precaching-response: The precaching request for 'https://dummyapp.com/_redirects?__WB_REVISION__=6a02faf7ea2a9584134ffe15779a0e44' failed with an HTTP status of 404.
    at PrecacheController._addURLToCache (https://storage.googleapis.com/workbox-cdn/releases/4.3.1/workbox-precaching.dev.js:445:15)
    at async Promise.all (index 0)
    at async PrecacheController.install (https://storage.googleapis.com/workbox-cdn/releases/4.3.1/workbox-precaching.dev.js:352:7)

我该如何解决?

4

1 回答 1

3

发生这种情况是因为当对预缓存资产的请求失败并显示 404 时。在这种情况下,服务工作者安装也会失败。检查 DevTools (ctrl+shift+i) 中的网络选项卡是否有返回 404 的文件,不要预缓存该文件。这应该可以解决问题。

于 2019-09-05T12:45:47.403 回答