webpack workbox 插件 - service worker 没有成功地服务于清单的开始 url
webpack workbox plugin - service worker does not successfully serve the manifest's start url
我正在尝试为 Webpack 设置 WorkboxPlugin,我确实按照 https://developers.google.com/web/tools/workbox/guides/get-started 上提供的教程进行操作,但无法摆脱上次失败的审核:
Users will not be prompted to install the Web App:
Failures: service worker does not successfully serve the manifest's start url
我基本上提供了一个离线页面/offline
但不知道如何在插件中路由它。
webpackplugin:
new WorkboxPlugin.GenerateSW({
swDest: 'sw.js',
clientsClaim: true,
skipWaiting: true,
runtimeCaching: [
{
urlPattern: new RegExp('/offline'),
handler: 'staleWhileRevalidate',
},
{
urlPattern: new RegExp('/'),
handler: 'staleWhileRevalidate',
},
],
}),
],
我清单中的 startUrl 指向:"start_url": "./",
生成的sw.js:
importScripts("https://storage.googleapis.com/workbox-cdn/releases/3.1.0/workbox-sw.js");
importScripts(
"/precache-manifest.b0461f0dafa721eb54bbbe7cf6e3d452.js"
);
self.__precacheManifest = [].concat(self.__precacheManifest || []);
workbox.precaching.suppressWarnings();
workbox.precaching.precacheAndRoute(self.__precacheManifest, {});
workbox.routing.registerRoute(/\/offline/, workbox.strategies.staleWhileRevalidate(), 'GET');
workbox.routing.registerRoute(/\//, workbox.strategies.staleWhileRevalidate(), 'GET');
预缓存清单看起来也不错
我错过了什么?
非常感谢!
修复方法是将 "start_url": "./"
设置为 Webapps url 例如:
"start_url": "https://webapp.app"
我正在尝试为 Webpack 设置 WorkboxPlugin,我确实按照 https://developers.google.com/web/tools/workbox/guides/get-started 上提供的教程进行操作,但无法摆脱上次失败的审核:
Users will not be prompted to install the Web App:
Failures: service worker does not successfully serve the manifest's start url
我基本上提供了一个离线页面/offline
但不知道如何在插件中路由它。
webpackplugin:
new WorkboxPlugin.GenerateSW({
swDest: 'sw.js',
clientsClaim: true,
skipWaiting: true,
runtimeCaching: [
{
urlPattern: new RegExp('/offline'),
handler: 'staleWhileRevalidate',
},
{
urlPattern: new RegExp('/'),
handler: 'staleWhileRevalidate',
},
],
}),
],
我清单中的 startUrl 指向:"start_url": "./",
生成的sw.js:
importScripts("https://storage.googleapis.com/workbox-cdn/releases/3.1.0/workbox-sw.js");
importScripts(
"/precache-manifest.b0461f0dafa721eb54bbbe7cf6e3d452.js"
);
self.__precacheManifest = [].concat(self.__precacheManifest || []);
workbox.precaching.suppressWarnings();
workbox.precaching.precacheAndRoute(self.__precacheManifest, {});
workbox.routing.registerRoute(/\/offline/, workbox.strategies.staleWhileRevalidate(), 'GET');
workbox.routing.registerRoute(/\//, workbox.strategies.staleWhileRevalidate(), 'GET');
预缓存清单看起来也不错
我错过了什么?
非常感谢!
修复方法是将 "start_url": "./"
设置为 Webapps url 例如:
"start_url": "https://webapp.app"