Service Workers

JavaScript 🔴 Senior

Définition

Proxy programmable entre l'app et le réseau, tournant en arrière-plan. Intercepte les requêtes fetch pour implémenter du cache offline, des push notifications et la synchronisation en arrière-plan.

Analogie

Un concierge d'hôtel qui intercepte ton courrier : il peut te le remettre du stock (cache) sans appeler le facteur (réseau).

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 stratégie d'invalidation, affichant des données périmées a l'infini.
#core#PWA#performance#navigateur

← → au clavier pour passer d'une fiche à l'autre