首页 > 解决方案 > Service Worker 的一个可能问题,它会阻止网站脱机工作

问题描述

我创建了一个新网站并添加了一个服务人员。它已安装但拒绝脱机工作。我通过指定所有 URL 来显式加载缓存中的所有资源。有人可以解释为什么主要请求失败了吗?

请求快照

链接:http ://ashutoshysingh.com/sw.js

更新 1: 我已读取缓存中的 index.html 文件。

  1. Firefox 控制台中显示的错误:

未能加载“ https://www.ashutoshysingh.com/ ”。ServiceWorker 向 FetchEvent.respondWith() 传递了一个 Promise,该 Promise 以“TypeError: NetworkError when trying to fetch resource.”被拒绝。

  1. Chrome 控制台中的错误:

https://www.ashutoshysingh.com/ ”的 FetchEvent 导致网络错误响应:承诺被拒绝。

标签: service-worker

解决方案


您还必须将您的 appshell(index.html 或类似)添加到缓存中:

caches.open(staticCacheName).then(function(cache) {
  return cache.addAll([
        '/', or 'index.html',
        'assets/css/styles.css',
        ...,

推荐阅读