Access-Control-Allow-Origin 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.
Der HTTP-Access-Control-Allow-Origin-Antwort-Header gibt an, ob die Antwort mit angeforderter Software aus dem gegebenen Ursprung geteilt werden kann.
| Header-Typ | Antwort-Header |
|---|---|
| Verbotener Anforderungsheader | Nein |
Syntax
Access-Control-Allow-Origin: *
Access-Control-Allow-Origin: <origin>
Access-Control-Allow-Origin: null
Direktiven
*(Wildcard)-
Die anfordernde Software aus jedem Ursprung darf auf die Ressource zugreifen. Für Anfragen ohne Anmeldedaten kann der wörtliche Wert
*als Wildcard angegeben werden. Der Versuch, die Wildcard mit Anmeldedaten zu verwenden, führt zu einem Fehler. <origin>-
Gibt einen einzelnen Ursprung an. Unterstützt der Server Clients aus mehreren Ursprüngen, muss er den Ursprung für den spezifischen Client zurückgeben, der die Anfrage stellt.
null-
Gibt den Ursprung "null" an.
Hinweis: Der Wert
nullsollte nicht verwendet werden. Es mag sicher erscheinen,Access-Control-Allow-Origin: "null"zurückzugeben; jedoch wird der Ursprung von Ressourcen, die ein nicht-hierarchisches Schema verwenden (wiedata:oderfile:), und von sandboxed-Dokumenten alsnullserialisiert. Viele Browser gewähren solchen Dokumenten Zugriff auf eine Antwort mit einemAccess-Control-Allow-Origin: nullHeader und jeder Ursprung kann ein feindliches Dokument mit einemnullUrsprung erstellen. Daher sollte dernull-Wert für denAccess-Control-Allow-Origin-Header vermieden werden.
Beispiele
Eine Antwort, die dem Browser mitteilt, dass Software aus jedem Ursprung auf eine Ressource zugreifen darf, enthält Folgendes:
Access-Control-Allow-Origin: *
Eine Antwort, die dem Browser mitteilt, dass anfordernde Software aus dem Ursprung https://big.rakal.top auf eine Ressource zugreifen darf, enthält Folgendes:
Access-Control-Allow-Origin: https://big.rakal.top
Um die möglichen Access-Control-Allow-Origin-Werte auf eine Reihe von erlaubten Ursprüngen zu begrenzen, ist Code auf der Serverseite erforderlich, um den Wert des Origin-Anforderungsheaders zu prüfen, diesen mit einer Liste erlaubter Ursprünge zu vergleichen, und dann, falls der Origin-Wert in der Liste ist, den Wert von Access-Control-Allow-Origin 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 einem expliziten Ursprung (anstelle des * Wildcards). In diesem Fall sollte die Antwort auch einen Vary-Antwortheader mit dem Wert Origin enthalten — um den Browsern anzuzeigen, dass Serverantworten sich basierend auf dem Wert des Origin-Anforderungsheaders unterscheiden können.
Access-Control-Allow-Origin: https://big.rakal.top
Vary: Origin
Spezifikationen
| Specification |
|---|
| Fetch> # http-access-control-allow-origin> |
Browser-Kompatibilität
Loading…