Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in English Always switch to English

Nom d'en-tête interdit

Un nom d'en-tête interdit est un nom d'en-tête HTTP qui ne peut être modifié par programmation, spécifiquement, un nom d'en-tête de requête HTTP (contraste avec Nom d'en-tête de réponse interdit).

Les modifications de ces en-têtes sont interdites pour que l'agent utilisateur garde un total contrôle sur eux. Par exemple, l'en-tête Date est un en-tête de requête interdit, donc ce code ne peut pas définir le champ Date du message :

js
fetch("https://httpbin.org/get", {
  headers: {
    Date: new Date().toUTCString(),
  },
});

Les noms commençant par Sec- sont réservés à la création de nouveaux en-têtes protégés des API qui donnent aux développeur·euse·s le contrôle sur les en-têtes, comme fetch(). Les en-têtes interdits sont l'un des suivants :

Note : L'en-tête User-Agent était auparavant interdit, mais ne l'est plus. Cependant, Chrome ignore toujours silencieusement cet en-tête dans les requêtes Fetch (voir Chromium bug 571722).

Note : Bien que l'en-tête Referer soit listé comme interdit dans la spécification (angl.), l'agent utilisateur n'en garde pas le contrôle total et l'en-tête peut être modifié par programmation. Par exemple, lors de l'utilisation de fetch(), l'en-tête Referer peut être modifié par programmation via l'option referrer.

Voir aussi