Forbidden header name
Ein verbotener Header-Name ist der Name eines HTTP-Headers, der programmatisch nicht modifiziert werden kann; speziell ein HTTP-Request-Header-Name (im Gegensatz zu einem verbotenen Antwort-Header-Name).
Die Modifikation solcher Header ist verboten, da der Benutzeragent die volle Kontrolle über sie behält. Namen, die mit Sec-
beginnen, sind reserviert, um neue Header zu erstellen, die vor APIs sicher sind, die Entwicklern die Kontrolle über Header gewähren, wie z.B. fetch()
.
Verbotene Header-Namen beginnen mit Proxy-
oder Sec-
oder gehören zu den folgenden Namen:
Accept-Charset
Accept-Encoding
Access-Control-Request-Headers
Access-Control-Request-Method
Connection
Content-Length
Cookie
Date
DNT
Expect
Host
Keep-Alive
Origin
Permissions-Policy
Proxy-
Sec-
Referer
TE
Trailer
Transfer-Encoding
Upgrade
Via
Hinweis: Der User-Agent
Header ist gemäß Spezifikation nicht mehr verboten — siehe Liste der verbotenen Header-Namen (dies wurde in Firefox 43 implementiert) — er kann nun in einem Fetch Headers Objekt gesetzt werden oder mit der setRequestHeader() Methode von XMLHttpRequest
. Allerdings wird Chrome diesen Header stillschweigend aus Fetch-Anfragen entfernen (siehe Chromium Bug 571722).
Hinweis: Während der Referer
Header in der Spezifikation als verbotener Header aufgeführt ist, behält der Benutzeragent nicht die volle Kontrolle darüber und der Header kann programmatisch modifiziert werden. Zum Beispiel kann bei der Verwendung von fetch()
der Referer
Header programmatisch über die referrer
Option geändert werden.
Siehe auch
- Verwandte Glossarbegriffe: