Я использую сервисный работник для кеширования и извлечения файлов.
Файлы кэшируются в онлайн-режиме, но когда я перехожу в автономный режим, кэш-память в Chrome Developer Tool становится пустой. Я не могу понять, в чем проблема.
Любая помощь приветствуется.
const cacheName = 'myCacheVersion1';
var filesToCache = [
'/',
'/service-worker/offline-page.html',
'/service-worker/sw.js'
]
const offlineUrl = 'https://gmc-test.mytrah.com/service-worker/offline-page.html';
this.addEventListener('install', event => {
event.waitUntil(
caches.open(cacheName).then(function(cache){
console.log(offlineUrl);
return cache.addAll(filesToCache);
})
.then(() => self.skipWaiting())
);
})
self.addEventListener('activate', function(e) {
console.log('[ServiceWorker] Activate');
e.waitUntil(
caches.keys().then(function(keyList) {
return Promise.all(keyList.map(function(key) {
if (key !== cacheName) {
console.log('[ServiceWorker] Removing old cache', key);
return caches.delete(key);
}
}));
})
);
return self.clients.claim();
});
this.addEventListener('fetch', event => {
console.log(event.request);
event.respondWith(
fetch(event.request).catch(() => caches.match(event.request))
)
});`
Выше показан код сервисного работника.
Заранее спасибо