小编f.c*_*f.c的帖子

无法注册ServiceWorker:获取脚本时收到错误的HTTP响应代码(404)

我正在创建一个渐进式Web应用程序(pwa),并尝试注册服务工作者以测试脱机功能。文件夹结构如下:

-- views 
   -- index.pug
-- sw.js
-- public
   -- js
      -- main.js
-- index.js
Run Code Online (Sandbox Code Playgroud)

index.js文件是服务器文件,main.js是每个.pug文件中链接的文件。我嵌入了服务人员注册代码,代码如下

if ('serviceWorker' in navigator) {
    window.addEventListener('load', function() {
        navigator.serviceWorker.register('./sw.js').then(function(registration) {
            // Registration was successful
            console.log('Service Worker registration successful with scope: ', registration.scope);

            // console.log('Service Worker registration successful with scope: ', registration.scope);
        }, function(err) {
            // registration failed :(
            console.log('ServiceWorker registration failed: ', err);
        });
    });
}
Run Code Online (Sandbox Code Playgroud)

404错误始终在本地主机中弹出,并且我不知道为什么会部署该URL,如何解决呢?

ServiceWorker registration failed:  TypeError: Failed to register a ServiceWorker: A bad HTTP response code (404) was received …
Run Code Online (Sandbox Code Playgroud)

offline node.js express service-worker progressive-web-apps

4
推荐指数
1
解决办法
1万
查看次数