Service Workers
JavaScript 🔴 SeniorDefinition
Proxy programmable entre l'app et le reseau, tournant en arriere-plan. Intercepte les requetes fetch pour implementer du cache offline, des push notifications et la synchronisation en arriere-plan.
Analogie
Un concierge d'hotel qui intercepte ton courrier : il peut te le remettre du stock (cache) sans appeler le facteur (reseau).
Exemple de code
// sw.js
self.addEventListener('fetch', (e) => {
e.respondWith(
caches.match(e.request)
.then(cached => cached || fetch(e.request))
);
});
// Registration
navigator.serviceWorker.register('/sw.js');
Cas d'usage
PWA offline-first, cache intelligent, push notifications, background sync.
Anti-pattern
Cacher agressivement sans strategie d'invalidation, affichant des donnees perimees a l'infini.