HTTP Headers Inspector
AcceptrequestMedia types the client can handle (e.g., text/html, application/json).
Access-Control-Allow-CredentialsresponseSet to "true" to let the browser expose a cross-origin response to JavaScript when the request carried cookies or HTTP auth.
Access-Control-Allow-HeadersresponseRequest headers the server permits on the real cross-origin request; answers a preflight OPTIONS.
Access-Control-Allow-MethodsresponseHTTP methods the server permits cross-origin (e.g., GET, POST, PUT); answers a preflight OPTIONS.
Access-Control-Allow-OriginresponseOrigin allowed to read the response: a specific origin or *. Cannot be * when credentials are included.
Access-Control-Max-AgeresponseHow many seconds the browser may cache a CORS preflight result before asking again.
Accept-EncodingrequestCompression algorithms the client accepts (gzip, deflate, br).
Accept-LanguagerequestPreferred languages for the response (e.g., en-US,en;q=0.9).
AuthorizationrequestCredentials for authenticating the client (Bearer token, Basic auth, etc.).
Cache-ControlbothCaching directives (e.g., no-cache, max-age=3600, public, private).
ConnectionbothControls whether the network connection stays open (keep-alive or close).
Content-EncodingbothEncoding applied to the body (gzip, deflate, identity).
Content-LengthbothSize of the request or response body in bytes.
Content-Security-PolicyresponseRestricts where scripts, styles, images, and frames may load from — the primary defence against XSS (e.g., default-src 'self').
Content-TypebothMedia type and encoding of the request/response body (e.g., application/json; charset=utf-8).
CookierequestHTTP cookies previously set by the server, sent back with requests.
ETagresponseUnique identifier for a version of a resource, used for caching.
HostrequestDomain name and port of the server being requested. Required in HTTP/1.1.
If-Modified-SincerequestReturns the resource only if modified after the given date (conditional GET).
If-None-MatchrequestReturns the resource only if the ETag does not match (conditional GET).
Last-ModifiedresponseDate and time the resource was last changed.
LocationresponseURL to redirect the client to (used with 3xx responses).
OriginrequestOrigin of the cross-site request, used in CORS preflight requests.
RefererrequestURL of the page making the request (note: misspelling is intentional in the HTTP spec).
Retry-AfterresponseHow long to wait before making another request (used with 429 or 503).
ServerresponseInformation about the server software handling the request.
Set-CookieresponseSets a cookie in the client; may include attributes like HttpOnly, Secure, SameSite.
Strict-Transport-SecurityresponseForces HTTPS by telling browsers not to use HTTP for a given duration (HSTS).
Transfer-EncodingbothEncoding for the message body (chunked, compress, deflate, gzip, identity).
User-AgentrequestString identifying the client browser, OS, and version.
VaryresponseTells caches which request headers affect the response (e.g., Vary: Accept-Encoding).
WWW-AuthenticateresponseAuthentication method the server requires (used with 401 responses).
X-Content-Type-OptionsresponsePrevents MIME-type sniffing; value "nosniff" instructs browser to use declared content type.
X-Frame-OptionsresponseControls embedding in iframes: DENY, SAMEORIGIN, or ALLOW-FROM uri.
X-Forwarded-ForrequestOriginal IP address of the client when passing through proxies or load balancers.
X-Requested-WithrequestIndicates an AJAX request; typically set to "XMLHttpRequest" by JS libraries.
X-XSS-ProtectionresponseLegacy XSS filter directive (deprecated in modern browsers, but still sent for legacy support).
Understand HTTP Headers Inspector
Ein Nachschlagewerk für die gängigen HTTP-Request- und -Response-Header sowie ein Parser, der einen eingefügten rohen Header-Block in strukturierte Schlüssel-Wert-Paare überführt.
How it works
HTTP-Header sind zeilenorientiert: ein Name, ein Doppelpunkt und ein Wert, abgeschlossen mit CRLF, wobei eine Leerzeile den Block beendet. Namen unterscheiden keine Groß- und Kleinschreibung, und deshalb schreiben HTTP/2 und HTTP/3 sie auf der Leitung alle klein. Der Parser hier trennt jede Zeile am ersten Doppelpunkt, damit Werte mit Doppelpunkten (eine URL in Location, eine Zeit in Retry-After) unversehrt bleiben, und das Nachschlagewerk daneben kennzeichnet jeden Header als Request-seitig, Response-seitig oder beides. Alles läuft lokal – dieses Tool liest Header, die Sie einfügen, es holt sie nicht von einer URL.
When to use it
- Einen aus dem Netzwerk-Tab der DevTools oder aus der Ausgabe von `curl -i` kopierten Block einfügen und als strukturierte Liste lesen
- Prüfen, welche Cache-Control-Direktiven tatsächlich gesendet werden, bevor Sie dem CDN die Schuld an einer veralteten Antwort geben
- Nachschlagen, welche Sicherheitsheader eine Antwort tragen sollte (Strict-Transport-Security, X-Content-Type-Options, X-Frame-Options) und was die einzelnen Werte bewirken
- Bestätigen, ob ein erwarteter Header – Vary, ETag, Access-Control-Allow-Origin – überhaupt vorhanden ist
Watch out for
- Dieses Tool ruft keine URL ab. Es erklärt und parst Header, die Sie liefern; um echte Header zu erfassen, nutzen Sie `curl -I`, den Netzwerk-Tab der DevTools oder den REST-Client.
- Wiederholte Header-Namen sind zulässig und bedeutsam. Eine Antwort kann mehrere Set-Cookie-Zeilen tragen; eine flache Schlüssel-Wert-Ansicht behält von einem wiederholten Namen nur den letzten – sehen Sie also in den rohen Block, wenn Cookies verschwinden.
- Der Schreibfehler in "Referer" steht in der ursprünglichen Spezifikation und bleibt bestehen. Referrer-Policy, viel später ergänzt, ist korrekt geschrieben – die jeweils falsche Schreibweise bewirkt stillschweigend nichts.
- X-XSS-Protection ist tot. Moderne Browser ignorieren ihn oder haben ihn entfernt, und ein Wert ungleich null war selbst ausnutzbar; der Ersatz ist eine Content-Security-Policy.
Frequently Asked Questions
Was ist der Cache-Control-Header?
Cache-Control weist Browser und CDNs an, wie sie zwischenspeichern sollen. Wichtige Werte: no-cache (vor der Nutzung des Caches erneut validieren), no-store (nie zwischenspeichern), max-age=3600 (1 Stunde zwischenspeichern), public (im CDN zwischenspeicherbar), private (nur im Browser), immutable (nie erneut validieren, für versionierte Assets).
Welche Header werden für CORS benötigt?
Für einfache Anfragen: Access-Control-Allow-Origin: * (oder ein bestimmter Origin). Für Anfragen mit Preflight (POST/PUT/eigene Header) zusätzlich Access-Control-Allow-Methods, Access-Control-Allow-Headers und optional Access-Control-Max-Age. Anfragen mit Zugangsdaten brauchen Access-Control-Allow-Credentials: true.
Was ist der Strict-Transport-Security-Header?
HSTS (HTTP Strict Transport Security) weist Browser an, für eine festgelegte Dauer nur über HTTPS zu verbinden: Strict-Transport-Security: max-age=31536000; includeSubDomains. Nach einem einzigen HTTPS-Besuch verweigern Browser ein Jahr lang einfaches HTTP. Mit Bedacht einsetzen – HTTPS muss funktionieren, bevor Sie es aktivieren.
How to Use HTTP Headers Inspector
- Paste or type your input in the input area above.
- The tool processes your input automatically or click Run.
- Copy or download the result using the action buttons.
- Use Ctrl+Enter to run quickly from the keyboard.