HTML-Attribut: crossorigin
Das crossorigin-Attribut, gültig für die <audio>, <img>, <link>, <script> und <video> Elemente, bietet Unterstützung für CORS, indem es definiert, wie das Element mit Anfragen zwischen verschiedenen Ursprüngen umgeht. Dadurch wird es ermöglicht, die CORS-Anfragen für die vom Element abgerufenen Daten zu konfigurieren. Abhängig vom Element kann das Attribut ein CORS-Einstellungselement sein.
Das crossorigin-Inhaltsattribut bei Media-Elementen ist ein CORS-Einstellungselement.
Diese Attribute sind aufzählbar und haben die folgenden möglichen Werte:
anonymous-
Anfrage verwendet CORS-Header und das Credentials-Flag ist auf
'same-origin'gesetzt. Es erfolgt kein Austausch von Benutzeranmeldeinformationen über Cookies, Client-seitige TLS-Zertifikate oder HTTP-Authentifizierung, es sei denn, das Ziel ist der gleiche Ursprung. use-credentials-
Anfrage verwendet CORS-Header, Credentials-Flag ist auf
'include'gesetzt und Benutzeranmeldeinformationen werden immer eingeschlossen. ""-
Wenn der Attributname auf einen leeren Wert gesetzt wird, wie
crossoriginodercrossorigin="", entspricht diesanonymous.
Ein ungültiges Schlüsselwort und eine leere Zeichenkette werden als das Schlüsselwort anonymous gehandhabt.
Standardmäßig (also wenn das Attribut nicht angegeben ist) wird CORS überhaupt nicht verwendet. Der Benutzer-Agent wird keine Erlaubnis für den vollen Zugriff auf die Ressource anfordern, und im Falle einer Anfrage über verschiedene Ursprünge werden bestimmte Einschränkungen basierend auf dem jeweiligen Elementtyp angewendet:
| Element | Einschränkungen |
img, audio, video |
Wenn die Ressource in einer <canvas> platziert wird, wird das Element als verunreinigt markiert.
|
script |
Der Zugriff auf Fehlerprotokollierung über [`window.onerror`](/de/docs/Web/API/Window/error_event) wird eingeschränkt. |
link |
Anfragen ohne entsprechendes crossorigin-Header können verworfen werden.
|
Hinweis:
Das crossorigin-Attribut wird für rel="icon" in Browsern auf Chromium-Basis nicht unterstützt. Siehe das offene Chromium-Problem.
Beispiel: crossorigin mit dem <script>-Element
Sie können das folgende <script>-Element verwenden, um einem Browser mitzuteilen, das https://example.com/example-framework.js Skript ohne das Senden von Benutzeranmeldeinformationen auszuführen.
<script
src="https://example.com/example-framework.js"
crossorigin="anonymous"></script>
Beispiel: Web-Manifest mit Anmeldedaten
Der Wert use-credentials muss verwendet werden, wenn ein Manifest abgerufen wird, das Anmeldedaten erfordert, auch wenn sich die Datei vom gleichen Ursprung stammt.
<link rel="manifest" href="/app.webmanifest" crossorigin="use-credentials" />
Spezifikationen
| Specification |
|---|
| HTML> # cors-settings-attributes> |
Browser-Kompatibilität
>html.elements.audio.crossorigin
Loading…
html.elements.img.crossorigin
Loading…
html.elements.link.crossorigin
Loading…
html.elements.script.crossorigin
Loading…
html.elements.video.crossorigin
Loading…