Access-Control-Allow-Origin
Der HTTP Access-Control-Allow-Origin
Antwort-Header gibt an, ob die Antwort mit dem anfordernden Code von der angegebenen Herkunft geteilt werden kann.
Header-Typ | Antwort-Header |
---|---|
Verbotener Header-Name | Nein |
Syntax
Access-Control-Allow-Origin: *
Access-Control-Allow-Origin: <origin>
Access-Control-Allow-Origin: null
Direktiven
*
(Wildcard)-
Der anfordernde Code von jeder Herkunft darf auf die Ressource zugreifen. Für Anfragen ohne Berechtigungsnachweise kann der wörtliche Wert
*
als Platzhalter angegeben werden. Der Versuch, den Platzhalter mit Berechtigungsnachweisen zu verwenden, führt zu einem Fehler. <origin>
-
Gibt eine einzelne Herkunft an. Wenn der Server Clients von mehreren Herkünften unterstützt, muss er die Herkunft für den spezifischen Client zurückgeben, der die Anfrage stellt.
null
-
Gibt die Herkunft "null" an.
Hinweis: Der Wert
null
sollte nicht verwendet werden. Es mag sicher erscheinen,Access-Control-Allow-Origin: "null"
zurückzugeben; jedoch wird die Herkunft von Ressourcen, die ein nicht-hierarchisches Schema verwenden (wiedata:
oderfile:
), und sandboxed Dokumente alsnull
serialisiert. Viele Browser gewähren solchen Dokumenten Zugriff auf eine Antwort mit einemAccess-Control-Allow-Origin: null
Header, und jede Herkunft kann ein feindliches Dokument mit einernull
-Herkunft erstellen. Daher sollte der Wertnull
für denAccess-Control-Allow-Origin
Header vermieden werden.
Beispiele
Eine Antwort, die dem Browser mitteilt, dass Code von jeder Herkunft auf eine Ressource zugreifen darf, wird Folgendes enthalten:
Access-Control-Allow-Origin: *
Eine Antwort, die dem Browser mitteilt, dass der anfordernde Code von der Herkunft https://developer.mozilla.org
auf eine Ressource zugreifen darf, wird Folgendes enthalten:
Access-Control-Allow-Origin: https://developer.mozilla.org
Das Begrenzen der möglichen Access-Control-Allow-Origin
Werte auf eine Menge erlaubter Herkünfte erfordert Code auf der Serverseite, um den Wert des Origin
Anfrage-Headers zu überprüfen, ihn mit einer Liste erlaubter Herkünfte zu vergleichen und, wenn der Origin
Wert in der Liste ist, den Access-Control-Allow-Origin
Wert auf den gleichen Wert wie den Origin
Wert zu setzen.
CORS und Caching
Angenommen, der Server sendet eine Antwort mit einem Access-Control-Allow-Origin
Wert mit einer expliziten Herkunft (anstatt des *
Platzhalters). In diesem Fall sollte die Antwort auch einen Vary
Antwort-Header mit dem Wert Origin
enthalten, um den Browsern anzuzeigen, dass Serverantworten basierend auf dem Wert des Origin
Anfrage-Headers unterschiedlich sein können.
Access-Control-Allow-Origin: https://developer.mozilla.org
Vary: Origin
Spezifikationen
Specification |
---|
Fetch Standard # http-access-control-allow-origin |
Browser-Kompatibilität
BCD tables only load in the browser