HTTP Request Validator
Check a raw HTTP request for syntax and formatting issues.
Key features
Paste a raw HTTP request — the kind you’d see in curl -v output, a proxy log, or a hand-written test fixture — and this checks the request line, headers, and body for common formatting mistakes. Everything is checked entirely in your browser.
How to use
Paste a raw HTTP request
Include the request line, headers, a blank line, then an optional body — the same shape curl -v or a proxy log shows.
Read the findings
Errors (real formatting problems) and warnings (unusual but technically valid) are listed separately, updating as you type.
Frequently asked questions
What counts as an error versus a warning?
Errors are things that break the request outright — a malformed request line, a header with no colon, or a missing Host header on HTTP/1.1 (which the spec requires). Warnings are unusual-but-technically-legal details, like a non-standard method or a header repeated when it shouldn't be.
Does this send the request anywhere?
No — it's a pure text/syntax check performed entirely in your browser. Nothing you paste here is sent over the network.
Why does it check Content-Length?
If a Content-Length header is present, this compares it against the actual byte length of the body you pasted (using UTF-8 encoding) — a mismatch is a common, hard-to-spot bug when hand-writing test requests.