Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.
Access-Control-Allow-Headers header
Baseline Widely available *
This feature is well established and works across many devices and browser versions. It’s been available across browsers since Juli 2015.
* Some parts of this feature may have varying levels of support.
Der HTTPAccess-Control-Allow-HeadersAntwort-Header wird als Antwort auf einePreflight-Anfrage verwendet, um die HTTP-Header anzugeben, die während der tatsächlichen Anfrage verwendet werden können. Dieser Header ist erforderlich, wenn die Preflight-AnfrageAccess-Control-Request-Headers enthält.
Hinweis:DieCORS-sicheren Anforderungs-Header sind immer erlaubt und werden normalerweise nicht inAccess-Control-Allow-Headers aufgeführt, es sei denn, es besteht die Notwendigkeit, diezusätzlichen Sicherheitsbeschränkungen zu umgehen.
| Header-Typ | Antwort-Header |
|---|
In diesem Artikel
Syntax
Access-Control-Allow-Headers: <header-name>Access-Control-Allow-Headers: <header-name>, <header-name>Access-Control-Allow-Headers: *Direktiven
<header-name>Der Name eines unterstützten Anforderungs-Headers. Der Header kann eine beliebige Anzahl von Headers auflisten, getrennt durch Kommas.
*(Wildcard)Jeder Header.Der Wert
*zählt nur als spezieller Platzhalterwert für Anfragen ohne Anmeldeinformationen (Anfragen ohneHTTP-Cookies oder HTTP-Authentifizierungsinformationen).Bei Anfragen mit Anmeldeinformationen wird es als der wörtliche Header-Name*ohne spezielle Semantik behandelt.DerAuthorization-Header akzeptiert keinen Wildcard und muss immer explizit aufgeführt werden.
Beispiele
>Implementierung eines benutzerdefinierten Headers
Unten ist ein Beispiel für einenAccess-Control-Allow-Headers-Header. Er zeigt an, dass ein benutzerdefinierter Header mit dem NamenX-Custom-Header von CORS-Anfragen an den Server unterstützt wird, zusätzlich zu denCORS-sicheren Anforderungs-Header.
Access-Control-Allow-Headers: X-Custom-HeaderUnterstützung mehrerer Header
Dieses Beispiel zeigtAccess-Control-Allow-Headers, wenn es Unterstützung für mehrere Header angibt.
Access-Control-Allow-Headers: X-Custom-Header, Upgrade-Insecure-RequestsUmgehen zusätzlicher Einschränkungen bei CORS-sicheren Headern
ObwohlCORS-sichere Anforderungs-Header immer erlaubt sind und normalerweise nicht inAccess-Control-Allow-Headers aufgeführt werden müssen, wird durch deren Auflistung dennoch diezusätzlichen Einschränkungen umgangen, die gelten.
Access-Control-Allow-Headers: AcceptVerarbeitung von Preflight-Anfragen
Schauen wir uns ein Beispiel für einePreflight-Anfrage an, dieAccess-Control-Allow-Headers beinhaltet.
Anfrage
Zuerst ist die Preflight-Anfrage eineOPTIONS-Anfrage, die eine Kombination der drei Preflight-Header umfasst:Access-Control-Request-Method,Access-Control-Request-Headers undOrigin.
Die nachstehende Preflight-Anfrage teilt dem Server mit, dass wir eine CORS-GET-Anfrage mit den inAccess-Control-Request-Headers aufgeführten Headern (Content-Type undX-Requested-With) senden möchten.
OPTIONS /resource/fooAccess-Control-Request-Method: GETAccess-Control-Request-Headers: content-type,x-requested-withOrigin: https://www.example.comAntwort
Wenn die durch die Preflight-Anfrage angegebene CORS-Anfrage autorisiert ist, wird der Server auf die Preflight-Anfrage mit einer Nachricht antworten, die den erlaubten Ursprung, die Methoden und die Header anzeigt. Unten sehen wir, dassAccess-Control-Allow-Headers die angeforderten Header enthält.
HTTP/1.1 200 OKContent-Length: 0Connection: keep-aliveAccess-Control-Allow-Origin: https://www.example.comAccess-Control-Allow-Methods: POST, GET, OPTIONS, DELETEAccess-Control-Allow-Headers: Content-Type, x-requested-withAccess-Control-Max-Age: 86400Wenn die angeforderte Methode nicht unterstützt wird, antwortet der Server mit einem Fehler.
Spezifikationen
| Specification |
|---|
| Fetch> # http-access-control-allow-headers> |