Les navigateurs Web interagissent avec les sites Web en suivant le protocole HTTP. Il s'agit d'un ensemble de règles standardisées pour la communication :
- Lorsque vous consultez une page Web, votre navigateur envoie des requêtes HTTP pour les ressources de la page, telles que le code HTML, le code CSS, le code JavaScript et les images.
- Lorsqu'un serveur HTTP (un serveur Web qui héberge un site Web) reçoit une requête HTTP valide d'un navigateur, il répond à ce navigateur avec une réponse HTTP.
- Les requêtes et les réponses peuvent inclure des informations supplémentaires appelées en-têtes HTTP.
Prenons l'exemple du site cats.example.
.

Requête
L'accès à la page cats.example
déclenche une chaîne de requêtes vers différents domaines. Cela inclut une demande d'image hébergée sur cats.example
lui-même, une demande de script d'analyse provenant de analytics.example
et d'autres demandes de ressources supplémentaires provenant d'autres domaines.
Les requêtes HTTP peuvent être augmentées avec des en-têtes de requête HTTP pour fournir des informations supplémentaires du navigateur au serveur Web. Par exemple, les en-têtes suivants sont souvent inclus :
Accept-Language: en-US
Cet en-tête indique la langue préférée de l'utilisateur, en l'occurrence l'anglais (États-Unis).User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36
Cet en-tête fournit des informations sur le navigateur et le système d'exploitation de l'utilisateur, en l'occurrence "Mozilla/5.0" (famille de navigateurs), "Macintosh" (système d'exploitation) et "Chrome/127.0.0.0" (version du navigateur).
Réponse
Lorsqu'un serveur Web reçoit une requête valide d'un navigateur, il lui envoie une réponse qui fournit la ressource demandée (la "charge utile") : HTML, CSS, JavaScript, un fichier image, une vidéo ou d'autres données. Tout comme chaque requête du navigateur peut inclure des en-têtes de requête, chaque réponse du serveur peut inclure des en-têtes de réponse. Ces en-têtes de réponse sont envoyés avec la charge utile.
Un en-tête Set-Cookie
inclus dans une réponse indique à votre navigateur de stocker du texte (un nom et une valeur). C'est ce qu'on appelle un cookie HTTP. En réponse à la requête pour cats.example/images/cat.jpg
, le serveur cats.example
inclut l'en-tête Set-Cookie:cat=tabby
. Cela indique au navigateur de stocker un cookie nommé "cat" avec la valeur "tabby".
Ce cookie sera ensuite inclus dans les requêtes ultérieures envoyées à cats.example,
jusqu'à ce qu'il expire ou soit supprimé.
Cela permet au serveur de conserver des informations sur l'utilisateur sur plusieurs pages Web ou sessions (par exemple, que l'utilisateur a vu une image d'un chat tigré).
Header | Action | Exemple | Effet | |
---|---|---|---|---|
Réponse HTTP Serveur vers navigateur |
Set‑Cookie
|
Le serveur Web demande à votre navigateur de stocker un cookie. | Set‑Cookie:cat=tabby |
Le cookie est stocké par votre navigateur et fourni dans les requêtes ultérieures au serveur qui l'a défini. |
Requête HTTP Navigateur vers serveur |
Cookie |
Votre navigateur fournit un cookie. | Cookie:cat=tabby |
Le cookie est mis à la disposition du serveur qui est la destination de la requête. |
Démonstrations
- 1pc.glitch.me : démonstration des cookies propriétaires
- 3pc.glitch.me : démonstration des cookies tiers
Outils
- Afficher, ajouter, modifier et supprimer des cookies dans les outils pour les développeurs Chrome
- Privacy Sandbox Analysis Tool
En savoir plus
- Que sont les cookies ?
- Attributs des cookies
- Que sont les cookies tiers ?
- Outils pour les cookies
- Démonstrations de cookies
- Utiliser des cookies HTTP