服务工作者不会在'/'

时间:2019-11-26 09:20:16

标签: javascript go service worker

我正在和一个服务人员玩耍,试图缓存我的index.html。我通过

提供
http.HandleFunc("/sw", handle.SW)
http.HandleFunc("/", handle.Index)

我的服务工作者缓存看起来像这样

self.addEventListener('install', (event) => {
    self.skipWaiting();
    event.waitUntil(async function () {
        const cache = await caches.open(CACHE_VERSION);
        await cache.addAll([
            '/',
            '/static/merged.css',
            '/static/merged.js',
            '/favicon.ico'
        ]);
    }());
});

没有服务工作者,我在开发人员工具中的“网络”标签会显示index.html的大小(4.5 KB,时间为46ms)。

enter image description here

现在已使用服务工作者merged.css,merged.js和favicon.ico进行了缓存,但是我的索引有两个条目。一个来自服务工作者,另一个大小为4.5 KB,时间为48ms。

enter image description here

所以我猜测index.html没有被缓存,并且我不知道该怎么做。

1 个答案:

答案 0 :(得分:0)

在您上传的屏幕截图中,它说获取index.html的请求是由名为sw.js的脚本发起的,确切的代码位于第二行。如果这确实是您代码中的服务人员,请仔细检查一下,找出提出此请求的原因。