Analyseur d'en-têtes HTTP

Analysez les en-têtes bruts de requête ou de réponse HTTP dans un tableau structuré. Extrayez la ligne d'état, les en-têtes, les cookies et les informations de type de contenu instantanément.

Détection automatique du type Extraction des cookies Analyse du Content-Type

Comment utiliser l'analyseur d'en-têtes HTTP

1

Collez les en-têtes

Copiez les en-têtes HTTP bruts depuis les outils de développement du navigateur (onglet Réseau) ou toute autre source et collez-les dans la zone de saisie.

2

Analyse automatique

Les en-têtes sont analysés instantanément dans un tableau structuré, détectant automatiquement s'il s'agit d'une requête ou d'une réponse.

3

Examinez les détails

Consultez la ligne d'état, les en-têtes individuels, les cookies extraits et la répartition du type de contenu.

Qu'est-ce que les en-têtes HTTP ?

Les en-têtes HTTP sont des paires clé-valeur envoyées entre un client et un serveur dans les requêtes et réponses HTTP. Ils transportent des métadonnées sur la requête ou la réponse, telles que le type de contenu, les règles de mise en cache, les jetons d'authentification et les informations de cookies. Comprendre les en-têtes est essentiel pour le débogage des applications web, l'optimisation des performances et la garantie de la sécurité.

En-têtes de requête

Envoyés par le client au serveur, y compris Host, User-Agent, Accept, Authorization et Cookie.

En-têtes de réponse

Envoyés par le serveur au client, y compris Content-Type, Set-Cookie, Cache-Control et X-Request-Id.

En-têtes de sécurité

En-têtes comme Content-Security-Policy, Strict-Transport-Security et X-Frame-Options qui renforcent la sécurité.

Questions fréquentes

Analyse-t-il les en-têtes de requête et de réponse ?

Oui. L'analyseur détecte automatiquement si l'entrée est une requête ou une réponse HTTP en fonction de la première ligne et l'analyse en conséquence. Les lignes de requête commencent par une méthode HTTP (GET, POST, etc.) tandis que les lignes de réponse commencent par HTTP/version.

Peut-il extraire les cookies des en-têtes Set-Cookie ?

Oui. Les en-têtes Set-Cookie sont analysés en cookies individuels affichant le nom, la valeur et tous les indicateurs tels que HttpOnly, Secure, SameSite, Path, Domain et Max-Age.

Quels formats d'en-têtes sont acceptés ?

Le format standard HTTP/1.1 et HTTP/2 avec un en-tête par ligne au format « Nom : Valeur ». Vous pouvez copier les en-têtes directement depuis les outils de développement du navigateur.

Quels en-têtes HTTP apparaissent le plus souvent ?

Les requêtes transportent généralement host, user-agent, accept, accept-encoding et cookie ; les réponses renvoient content-type, content-length, cache-control, set-cookie et date. Le trafic d'API ajoute authorization et content-type: application/json à l'aller, et des en-têtes rate-limit au retour. La RFC 9110 (sémantique HTTP, 2022) est la référence moderne qui les définit tous.

Quelle est la différence entre les en-têtes de requête et de réponse ?

Les en-têtes de requête (host, authorization, accept-*) décrivent ce que demande le client ; les en-têtes de réponse (location, set-cookie, retry-after) décrivent ce qui est renvoyé. Certains champs apparaissent dans les deux sens (cache-control, content-type), et quelques-uns gouvernent la connexion elle-même (connection: keep-alive) plutôt que le contenu du message. Cet analyseur indique de quel côté appartient chaque en-tête.

Comment les en-têtes HTTP dupliqués sont-ils traités ?

Selon la RFC 9110, la plupart des champs répétés se combinent en une seule liste séparée par des virgules - deux lignes cache-control et une ligne no-cache, no-store sont équivalentes. Set-Cookie est l'exception documentée : il ne peut jamais être fusionné par une virgule car les dates Expires contiennent des virgules, donc les proxys doivent transmettre chaque Set-Cookie séparément. Cette exception est une source classique de bugs de proxy.

Qu'est-ce qui a changé pour les en-têtes avec HTTP/2 et HTTP/3 ?

Les noms de champs sont passés en minuscules et voyagent dans des trames binaires compressées via HPACK ou QPACK ; chaque requête ouvre son propre flux, et les en-têtes de connexion comme Host ont été remplacés par le pseudo-en-tête :authority aux côtés de :method, :scheme et :path. Sémantiquement, les champs suivent toujours la RFC 9110 - c'est le format filaire qui a changé, pas le vocabulaire.

Quelle syntaxe d'en-tête est réellement invalide ?

Un espace entre le nom du champ et les deux-points (Header : value) - l'analyse HTTP/1.1 et la spécification HTTP/2 le rejettent toutes les deux pour prévenir le request smuggling. Sont également invalides : les espaces ou les octets non ASCII dans le nom du champ, les caractères de contrôle dans les valeurs, et l'obs-fold (un en-tête continué par une ligne indentée), que la RFC 9110 marque comme obsolète - remplacez-le par une seule ligne ou une valeur de liste.

{-- * External Resources Component(#18 Phase 3b 内容佐证工程) * 工具页「权威引用」区块:RFC / W3C / WHATWG / ECMA / IANA / 官方规范站 / Wikipedia。 * * - 接受 :slug 属性 → 经 config/tool-sources.php 家族矩阵渲染该工具的权威引用 * - slug 未命中映射时不渲染(无权威来源的工具静默跳过) * - 链接 title 保持英文(引用源专名);description 经 * common.resources.descriptions.{key} 本地化,lang 未命中回退英文(线上不裸奔) * - 链接保持 dofollow(rel="noopener noreferrer") * * @param string|null $slug --}}