И это всё МОЁ

Вот на гугле есть такой пример

self.addEventListener('fetch', function(event) {
event.respondWith(
fetch(event.request).catch(function() {
return caches.match(event.request);
})
);
});

Но они там говорят

you'll most-likely want to update the cache entry.

Что мол cache-ом сам занимайся. Хотелось бы увидеть пример с кэшем,
как я понимаю это должно работать

сервис воркер который будет делать запрос, если за X (400 мс) он
| отвечает - вернуть ответ, и положить в кэш
| не отвечает - проверить если ли он в кеше
| есть в кеше - дать ответ, запрос не прерывать, по завершению положить в кеш
| нет в кеше - продолжает ждать ответ от сервера - когда прийдет вернуть его и положить в кеш








 ,