Browse Source

network first strategy with cache update

master
Flo Smilari 4 years ago
parent
commit
85ce70b05f
1 changed files with 5 additions and 1 deletions
  1. 5
    1
      wwwroot/service-worker.js

+ 5
- 1
wwwroot/service-worker.js View File

self.clients.claim(); self.clients.claim();
}); });
// fetch events (Network first strategy, no cache update after install)
// fetch events (Network first strategy, cache update after fetch)
self.addEventListener('fetch', function (event) { self.addEventListener('fetch', function (event) {
event.respondWith(fromNetwork(event.request, 30000).catch(function () { event.respondWith(fromNetwork(event.request, 30000).catch(function () {
return fromCache(event.request); return fromCache(event.request);
var timeoutId = setTimeout(reject, timeout); var timeoutId = setTimeout(reject, timeout);
fetch(request).then(function (response) { fetch(request).then(function (response) {
clearTimeout(timeoutId); clearTimeout(timeoutId);
var responseClone = response.clone();
caches.open(staticCacheName).then(function (cache) {
cache.put(request, responseClone);
});
fulfill(response); fulfill(response);
}, reject); }, reject);
}); });

Loading…
Cancel
Save