Aunque veo preguntas similares con respecto al tema, no son lo mismo. Entonces, tengo una aplicación pwa que es básicamente un formulario simple que los usuarios deben completar. El trabajador del servicio captura los recursos y sirve a la aplicación, como de costumbre. La estrategia es 'primero el caché, luego la red'. Todo está bien, cuando está en línea, PERO en el modo fuera de línea, la aplicación no utiliza los recursos almacenados en caché, es decir, a pesar de que (puede ver) en el caché están los recursos (solicitudes de recuperación) que necesita la aplicación, de todos modos, intente buscar en la web y, obviamente, porque no está conectado, la búsqueda falla y la aplicación se bloquea. Entonces, las líneas de código...
caches.match(e.request) .then( res => { if (res ){ return res; }... no está trabajando. Mi pregunta....¿Por qué???. Agradeceré su ayuda/comentarios.
Debe agregar más contexto y código para que otros entiendan mejor su situación.
¿Sirve datos del caché como el siguiente ejemplo?
self.addEventListener('fetch', function(event) { event.respondWith( caches.open('mysite-dynamic').then(function(cache) { return cache.match(event.request).then(function (response) { return response || fetch(event.request).then(function(response) { cache.put(event.request, response.clone()); return response; }); }); }) ); });