我最近进入服务人员并对其进行了测试。以前,我的站点具有AppCache清单,并且我曾经缓存所有文件,并且还具有用于自定义网址的后备选项。例如,这是我的旧AppCache清单文件:
FALLBACK:
# offline message page
/ assets/OFFLINE/offline.html
# about page
about assets/OFFLINE/about.html
# static pages
1 assets/OFFLINE/1.html
2 assets/OFFLINE/2.html
我正在尝试与服务人员保持一致,例如,如果用户转到
www.website.com/1
加载
www.website.com/assets/OFFLINE/1.html
我当前的服务工作者文件如下:
importScripts('cache-polyfill.js');
self.addEventListener('install', function(e) {
e.waitUntil(
caches.open('airhorner').then(function(cache) {
return cache.addAll([
'/',
'index.html',
'style.css',
]);
})
);
});
self.addEventListener('fetch', function(event) {
console.log(event.request.url);
event.respondWith(
caches.match(event.request).then(function(response) {
return response || fetch(event.request);
})
);
});
文件被完美地缓存了,但是现在我该如何使用Service Worker做上述事情?