Request: mode-Eigenschaft
Baseline Widely available *
This feature is well established and works across many devices and browser versions. It’s been available across browsers since March 2017.
* Some parts of this feature may have varying levels of support.
Hinweis: Diese Funktion ist in Web Workers verfügbar.
Die schreibgeschützte mode
-Eigenschaft der Request
-Schnittstelle enthält den Modus der Anfrage (z.B. cors
, no-cors
, same-origin
oder navigate
). Dies wird verwendet, um zu bestimmen, ob Cross-Origin-Anfragen zu gültigen Antworten führen und welche Eigenschaften der Antwort lesbar sind.
Um eine Anfrage mit einem spezifischen Modus zu erstellen, übergeben Sie den gewünschten Wert als RequestInit.mode
-Option an den Request.Request()
-Konstruktor.
Bitte beachten Sie, dass das Setzen bestimmter Modi, insbesondere no-cors
, Einschränkungen bei den verwendbaren Anfragemethoden und -header erzwingt und JavaScript daran hindert, auf die Antwort-Header oder den Körper zuzugreifen. Weitere Details finden Sie in der Dokumentation zu RequestInit.mode
.
Wert
Einer der folgenden Werte:
same-origin
-
Verhindert Cross-Origin-Anfragen. Wenn eine Anfrage an eine andere Quelle mit diesem Modus gestellt wird, führt dies zu einem Fehler.
no-cors
-
Deaktiviert CORS für Cross-Origin-Anfragen. Die Antwort ist undurchsichtig, was bedeutet, dass ihre Header und ihr Körper für JavaScript nicht verfügbar sind.
cors
-
Wenn die Anfrage Cross-Origin ist, wird der Mechanismus von Cross-Origin Resource Sharing (CORS) verwendet.
-
Ein Modus zur Unterstützung der Navigation. Der
navigate
-Wert ist nur für die HTML-Navigation gedacht. Eine Navigationsanfrage wird nur während des Navigierens zwischen Dokumenten erstellt.
Standardmodus
Anfragen können auf verschiedene Arten initiiert werden, und der Modus für eine Anfrage hängt von der speziellen Methode ab, mit der sie initiiert wurde.
Beispielsweise wird beim Erstellen eines Request
-Objekts mit dem Request()
-Konstruktor der Wert der mode
-Eigenschaft für diese Request
auf cors
gesetzt.
Allerdings wird für Anfragen, die anders als durch den Request()
-Konstruktor erstellt wurden, typischerweise no-cors
als Modus verwendet; zum Beispiel für eingebettete Ressourcen, bei denen die Anfrage von einem Markup initiiert wird, es sei denn, das crossorigin
-Attribut ist vorhanden. In den meisten Fällen wird die Anfrage im no-cors
-Modus gestellt — das gilt für die <link>
oder <script>
-Elemente (außer bei Verwendung mit Modulen) oder <img>
, <audio>
, <video>
, <object>
, <embed>
oder <iframe>
-Elemente.
Beispiele
Im folgenden Ausschnitt erstellen wir eine neue Anfrage mit dem Request()
-Konstruktor (für eine Bilddatei im gleichen Verzeichnis wie das Skript), dann speichern wir den Anfragemodus in einer Variablen:
const myRequest = new Request("flowers.jpg");
const myMode = myRequest.mode; // returns "cors" by default
Spezifikationen
Specification |
---|
Fetch # ref-for-dom-request-mode② |