Analyseur de messages HTTP
Analyser et inspecter les messages HTTP/1.x et HTTP/2 incluant les requêtes, réponses et sortie verbose curl. Voir les en-têtes, codes de statut et corps dans un format structuré. Prend en charge la détection automatique du type de corps pour le contenu JSON, HTML et XML.
Specifications
Cas d'utilisation courants
- Déboguer les requêtes HTTP depuis l'onglet réseau du navigateur
- Analyser les réponses API
- Analyser la sortie curl -v pour le dépannage
- Inspecter les charges utiles de webhooks
- Examiner les en-têtes HTTP pour l'analyse de sécurité
Fonctionnalites
- Analyser les requêtes et réponses HTTP/1.x et HTTP/2
- Analyser la sortie verbose curl -v
- Afficher les codes de statut avec couleurs par catégorie (2xx, 3xx, 4xx, 5xx)
- Séparer les en-têtes de requête et de réponse pour la sortie curl
- Détection automatique du type de contenu du corps (JSON, HTML, XML)
- Rendu dynamique de l'outil de corps (chargement paresseux de JSONTool, HTMLTool, etc. pour le contenu du corps)
- Sections de corps dépliables/repliables
- Copier les en-têtes ou le corps dans le presse-papiers
Exemples
Requête HTTP GET
Essayer →Une simple requête GET avec en-têtes
GET /api/users HTTP/1.1
Host: example.com
Accept: application/json
Authorization: Bearer token123Réponse HTTP
Essayer →Une réponse 200 OK avec corps JSON
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 27
{"name":"John","age":30}Sortie curl -v
Essayer →Sortie verbose curl avec requête et réponse
* Trying 93.184.216.34:443...
* Connected to example.com
> GET /api HTTP/1.1
> Host: example.com
> Accept: */*
>
< HTTP/1.1 200 OK
< Content-Type: application/json
<
{"status":"ok"}Conseils
- Collez la sortie curl -v directement — les en-têtes de requête et de réponse sont analysés séparément.
- Cliquez sur "Décoder en JSON/HTML/XML" pour chaîner le corps vers le décodeur approprié.
- Les codes de statut sont colorés : vert (2xx), bleu (3xx), jaune (4xx), rouge (5xx).
Comprendre Analyseur de messages HTTP
Les messages HTTP sont les unités fondamentales de communication dans le protocole de transfert hypertexte. Chaque interaction entre un client web et un serveur consiste en un message de requête et un message de réponse. Comprendre leur structure est essentiel pour déboguer les API, analyser le trafic réseau et construire des services web.
Une requête HTTP commence par une ligne de requête contenant la méthode (GET, POST, PUT, DELETE), le chemin cible et la version du protocole. Ceci est suivi de champs d'en-tête (paires clé-valeur), d'une ligne vide et d'un corps optionnel. La méthode indique l'action prévue : GET récupère les données, POST soumet les données, PUT remplace une ressource, DELETE la supprime et PATCH la met à jour partiellement.
Une réponse HTTP commence par une ligne de statut contenant la version du protocole, un code de statut à trois chiffres et une phrase de raison. Les codes de statut sont groupés par classe : 2xx pour le succès (200 OK, 201 Created), 3xx pour la redirection (301 Moved, 304 Not Modified), 4xx pour les erreurs client (400 Bad Request, 401 Unauthorized, 404 Not Found) et 5xx pour les erreurs serveur (500 Internal Server Error, 502 Bad Gateway).
L'outil en ligne de commande curl avec le drapeau -v (verbose) affiche à la fois la requête et la réponse dans un format distinctif utilisant > pour les données envoyées et < pour les données reçues. Ce format de sortie est l'une des façons les plus courantes dont les développeurs rencontrent des messages HTTP bruts, faisant de l'analyse de curl -v une capacité de débogage essentielle.
HTTP/1.1 est basé sur le texte et envoie une requête par connexion TCP à la fois (le pipelining existe mais est mal supporté). HTTP/2 est un protocole binaire qui multiplexe plusieurs requêtes sur une seule connexion, prend en charge le server push et compresse les en-têtes avec HPACK. HTTP/2 réduit significativement la latence pour les sites web modernes. La sémantique — méthodes, codes de statut et en-têtes — reste la même entre les deux versions ; seul le format réseau diffère.
Dans la sortie curl -v, les lignes commençant par > sont les données envoyées au serveur (la requête), les lignes commençant par < sont les données reçues du serveur (la réponse) et les lignes commençant par * sont les messages informationnels de curl sur les détails de connexion et la négociation TLS. Une ligne vide contenant uniquement > ou < sépare les en-têtes du corps. Cet outil analyse automatiquement les trois sections.
Les codes de statut suivent un schéma numérique bien défini : les codes 1xx sont informationnels (100 Continue), 2xx indiquent le succès (200 OK, 201 Created, 204 No Content), 3xx signalent une redirection (301 Permanent, 302 Found, 304 Not Modified), 4xx représentent les erreurs client (400 Bad Request, 401 Unauthorized, 403 Forbidden, 404 Not Found, 429 Too Many Requests) et 5xx couvrent les erreurs serveur (500 Internal Error, 502 Bad Gateway, 503 Service Unavailable).