服务工作者不离线工作

atb*_*ker 3 service-worker progressive-web-apps

我已经成功注册了 service-workers.js 并且没有错误,它具有离线工作所需的所有文件存储在cache 中。但是,当我尝试检查它是否会200在离线时响应时, 它失败了!

这是代码:

//Delete Old Cache
caches.delete('[v0.1.0]');

//Latest CACHE_NAME
var CACHE_NAME = '[v0.1.1] Portfolio (ATB00ker)';

//Files to be Cached
var urlsToCache = [
    '../../../index.html',
    '../jquery-3.2.1.slim.min.js',
    '../owl.carousel.min.js',
    '../scrollreveal.min.js',
    '../../images/bg-creator.webp',
    '../../images/icon/facebook.svg',
    '../../images/icon/telegram.svg',
    '../../images/icon/gmail.svg',
    '../../images/icon/github.webp'
];


self.addEventListener('install', function(event) {
  // Perform install steps
  event.waitUntil(
    caches.open(CACHE_NAME)
      .then(function(cache) {
        return cache.addAll(urlsToCache);
      })
  );
});


self.addEventListener('fetch', event => {
  event.respondWith(
    caches.match(event.request, {ignoreSearch:true}).then(response => {
      return response || fetch(event.request);
    })
  );
});
Run Code Online (Sandbox Code Playgroud)

abr*_*ham 7

您已/index.html离线缓存,但您正在访问/以测试它。这是两条不同的路径,您必须离线缓存要访问的路径。