Origin

Der HTTP-Origin-Request-Header gibt den Ursprung (Schema, Hostname und Port) an, der die Anfrage verursacht hat. Wenn ein Benutzeragent beispielsweise Ressourcen anfordern muss, die in einer Seite enthalten sind oder durch Skripte abgerufen werden, die er ausführt, kann der Ursprung der Seite in die Anfrage einbezogen werden.

Headertyp Request-Header
Verbotener Headername Ja

Syntax

http
Origin: null
Origin: <scheme>://<hostname>
Origin: <scheme>://<hostname>:<port>

Direktiven

null

Der Ursprung ist "datenschutzsensibel" oder ein undurchsichtiger Ursprung, wie in der HTML-Spezifikation definiert (spezifische Fälle sind im Abschnitt Beschreibung aufgeführt).

<scheme>

Das verwendete Protokoll. In der Regel ist es das HTTP-Protokoll oder seine gesicherte Version, HTTPS.

<hostname>

Der Domainname oder die IP-Adresse des Ursprungsservers.

<port> Optional

Die Portnummer, auf der der Server hört. Wenn kein Port angegeben ist, wird der Standardport für den angeforderten Dienst aus dem Schema impliziert (z.B. 80 für eine HTTP-URL).

Beschreibung

Der Origin-Header ähnelt dem Referer-Header, gibt jedoch nicht den Pfad an und kann null sein. Er wird verwendet, um den Sicherheitskontext für die Ursprungsanfrage bereitzustellen, außer in Fällen, in denen die Ursprungsinformationen sensibel oder unnötig wären.

Im Allgemeinen fügen Benutzeragenten den Origin-Request-Header zu folgenden Anfragen hinzu:

Es gibt einige Ausnahmen von den oben genannten Regeln; zum Beispiel wird der Origin-Header nicht hinzugefügt, wenn eine Cross-Origin-GET- oder HEAD-Anfrage im No-CORS-Modus durchgeführt wird.

Der Origin-Header-Wert kann in mehreren Fällen null sein, einschließlich (nicht erschöpfend):

  • Ursprünge, deren Schema nicht http, https, ftp, ws, wss oder gopher ist (einschließlich blob, file und data).
  • Cross-Origin-Bilder und Mediendaten, einschließlich solche in <img>, <video> und <audio> Elementen.
  • Dokumente, die programmgesteuert erstellt werden, indem createDocument() verwendet wird, aus einer data:-URL generiert wurden oder die keinen Ersteller-Browsing-Kontext haben.
  • Weiterleitungen über Ursprünge hinweg.
  • iframes mit einem Sandbox-Attribut, das nicht den Wert allow-same-origin enthält.
  • Antworten, die Netzfehler sind.
  • Referrer-Policy auf no-referrer gesetzt für nicht-cors-Request-Modi (z.B., einfache Formularübermittlungen).

Hinweis: Eine detailliertere Auflistung von Fällen, die null zurückgeben können, finden Sie auf Stack Overflow: Wann senden Browser den Origin-Header? Wann setzen Browser den Ursprung auf null?

Beispiele

http
Origin: https://developer.mozilla.org
http
Origin: https://developer.mozilla.org:80

Spezifikationen

Specification
The Web Origin Concept
# section-7
Fetch Standard
# origin-header

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch