服务人员只要求一次

时间:2019-07-07 13:20:36

标签: websphere service-worker workbox

我正在为我的多页Web应用程序注册服务工作者,这是第一次请求,任何新页面都请求或刷新,它不再请求服务工作者文件,这意味着没有代码在运行。我无法缓存我的资源。

环境: 后端:WCS Webspere服务器。

服务工作者的网址:/wcs/service-worker.js

目录结构:/webContent/service-worker.js

注意:关于URL,所有URL都是合乎逻辑的,它们与物理结构不匹配。我所有页面的URL前缀都是/ wcs /

期望: 每次我打开网站时,都会在控制台中收到以下消息:

是的!已加载工作箱?

当前行为:它只是在第一次(即在注册时)显示消息

注册代码:

if ('serviceWorker' in navigator) {
window.addEventListener('load', () => {
  navigator.serviceWorker.register('/wcs/service-worker.js')
    .then(registration => {
      console.log(`Service Worker registered!`, registration.scope);
    })
    .catch(err => {
      console.log(`Service Worker registration failed: ${err}`);
    });
});


}

server-worker.js

importScripts('https://storage.googleapis.com/workbox-cdn/releases/4.3.1/workbox-sw.js');

if (workbox) {
  console.log(`Yay! Workbox is loaded ?`);
  workbox.routing.registerRoute(
      /\.js$/,
      new workbox.strategies.NetworkFirst()
    );

} else {
  console.log(`Boo! Workbox didn't load ?`);
}

为服务人员附加了HTTP请求示例, Referer 标头与服务人员文件所请求的URL相同。

Service worker request

0 个答案:

没有答案