Wat is een raw HTTP-verzoek?

Een raw HTTP-verzoek is de platte-tekstrepresentatie van een HTTP-bericht zoals het over het netwerk wordt verzonden. Het bestaat uit een verzoekregel (methode, URL en HTTP-versie), gevolgd door headervelden (sleutel-waardeparen), een lege regel en een optionele body. Een eenvoudig GET-verzoek ziet er bijvoorbeeld uit als GET /index.html HTTP/1.1, gevolgd door headers zoals Host: example.com.

Inzicht in raw HTTP-verzoeken is fundamenteel voor webontwikkeling, API-debugging en het oplossen van netwerkproblemen. Tools zoals cURL, Wireshark en de ontwikkelaarstools van browsers tonen verzoeken vaak in raw formaat. Het kunnen lezen en valideren van deze raw berichten helpt ontwikkelaars problemen te diagnosticeren zoals misvormde headers, onjuiste inhoudslengte, ontbrekende host-headers of versieverschillen in het protocol.

Beschrijving van de tool

De Raw HTTP Request Validator parseert en valideert raw HTTP-verzoekberichten. Plak een volledig raw HTTP-verzoek — inclusief de verzoekregel, headers en optionele body — en de tool controleert of het voldoet aan geldige HTTP-syntaxis. Als het verzoek geldig is, worden de belangrijkste details geëxtraheerd en weergegeven, waaronder de HTTP-methode, URL, HTTP-versie, host, het aantal headers en de bodygrootte in bytes. Als het verzoek misvormd is, wordt de specifieke parseerfout gerapporteerd.

Functies

  • Volledige verzoekparsering: Valideert de volledige HTTP-berichtstructuur, inclusief de verzoekregel, headers en body
  • Gedetailleerde veldextractie: Toont de geparseerde methode, URL, HTTP-versie, host-header, het aantal headers en het aantal bytes in de body
  • Foutrapportage: Geeft specifieke foutmeldingen wanneer het verzoek onvolledig of misvormd is
  • Vooraf ingevuld voorbeeld: Bevat een voorbeeld-POST-verzoek zodat u direct het verwachte formaat kunt zien
  • Op standaarden gebaseerde parsering: Maakt gebruik van de http-parser-js-bibliotheek, die dezelfde parserlogica implementeert als Node.js

Hoe het werkt

De tool maakt gebruik van http-parser-js, een JavaScript-implementatie van de HTTP-parser die oorspronkelijk in C is geschreven voor Node.js. Wanneer u een raw verzoek plakt, verwerkt de parser het byte voor byte — waarbij de verzoekregel wordt geïdentificeerd, elk headerpaar wordt geëxtraheerd, de body wordt opgebouwd en de volledigheid van het bericht wordt gecontroleerd. Als de parser een syntaxisfout tegenkomt of het bericht onvolledig is (de laatste lege regel of de gedeclareerde body-inhoud ontbreekt), wordt de fout gerapporteerd. Bij succes worden de geparseerde onderdelen weergegeven in gestructureerde uitvoervelden.

Beperkingen

  • Alleen HTTP/1.x: De parser verwerkt HTTP/1.0- en HTTP/1.1-verzoeken. Binaire frames van HTTP/2 worden niet ondersteund
  • Alleen verzoeken: Deze tool valideert HTTP-verzoeken, geen HTTP-antwoorden
  • Geen semantische validatie: De parser controleert de structurele juistheid, maar valideert niet of specifieke headerwaarden logisch geldig zijn (bijvoorbeeld of een Content-Type overeenkomt met het werkelijke bodyformaat)

Toepassingen

  • API-debugging: Valideer raw verzoeken die zijn vastgelegd uit logs, proxies of documentatie voordat u ze naar een server stuurt
  • HTTP leren: Bestudeer de structuur van HTTP-berichten door te experimenteren met verschillende methoden, headers en bodyformaten
  • Beveiligingsanalyse: Inspecteer en valideer verdachte of ongebruikelijke HTTP-verzoeken die worden aangetroffen tijdens penetratietesten of het beoordelen van logs