Service Workers

JavaScript 🔴 Senior

Definition

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.
#core#PWA#performance#navigateur