ETag / If-None-Match

Architecture 🟡 Mid

Definition

Mecanisme de cache HTTP : le serveur renvoie un ETag (hash du contenu), le client le renvoie dans If-None-Match. Si inchange, 304 Not Modified.

Analogie

Un numero de version sur un document : si tu as deja la derniere version, pas besoin de retelecharger.

Exemple de code

// Reponse serveur
res.setHeader('ETag', '"abc123"');
// Requete client suivante
// If-None-Match: "abc123"
// Serveur: 304 Not Modified (pas de body)

Cas d'usage

Reduire la bande passante et la charge serveur pour les ressources rarement modifiees.

Anti-pattern

Generer un ETag couteux (hash de tout le body) sur chaque requete — annule le gain.

Termes lies

#architecture#interview#api#performance