Thanks to visit codestin.com
Credit goes to developer.mozilla.org

Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

Access-Control-Allow-Credentials 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-Credentials Response-Header teilt den Browsern mit, ob der Server erlaubt, dass Anmeldedaten in Cross-Origin-HTTP-Anfragen eingeschlossen werden.

Anmeldedaten umfassen Cookies, Transport Layer Security (TLS) Client-Zertifikate oder Authentifizierungsheader, die einen Benutzernamen und ein Passwort enthalten. Standardmäßig werden diese Anmeldedaten nicht in Cross-Origin-Anfragen gesendet, da dies eine Seite anfällig für Cross-Site Request Forgery (CSRF) Angriffe machen kann.

Ein Client kann auf mehrere Arten darum bitten, dass Anmeldedaten in Cross-Site-Anfragen einbezogen werden:

Wenn Anmeldedaten einbezogen werden:

  • Für Preflighted Anfragen: Die Vorab-Anfrage enthält keine Anmeldedaten. Wenn die Server-Antwort auf die Vorab-Anfrage den Access-Control-Allow-Credentials Header auf true setzt, wird die tatsächliche Anfrage Anmeldedaten enthalten; andernfalls meldet der Browser einen Netzwerkfehler.
  • Für nicht vorabgeprüfte Anfragen: Die Anfrage enthält Anmeldedaten, und wenn die Server-Antwort den Access-Control-Allow-Credentials Header nicht auf true setzt, meldet der Browser einen Netzwerkfehler.
Header-Typ Response-Header

Syntax

http
Access-Control-Allow-Credentials: true

Direktiven

true

Der Server erlaubt, dass Anmeldedaten in Cross-Origin HTTP-Anfragen enthalten sind. Dies ist der einzige gültige Wert für diesen Header und ist groß- und kleinschreibungssensitiv. Wenn Sie keine Anmeldedaten benötigen, lassen Sie diesen Header vollständig weg, anstatt seinen Wert auf false zu setzen.

Beispiele

Anmeldedaten erlauben:

http
Access-Control-Allow-Credentials: true

Verwendung von fetch() mit Anmeldedaten:

js
fetch(url, {
  credentials: "include",
});

Verwendung von XMLHttpRequest mit Anmeldedaten:

js
const xhr = new XMLHttpRequest();
xhr.open("GET", "http://example.com/", true);
xhr.withCredentials = true;
xhr.send(null);

Spezifikationen

Specification
Fetch
# http-access-control-allow-credentials

Browser-Kompatibilität

Siehe auch