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 mode
schreibgeschützte Eigenschaft des Request
Interfaces enthält den Modus der Anfrage (z.B. cors
,
no-cors
, same-origin
oder navigate
). Diese wird verwendet,
um festzustellen, ob Cross-Origin-Anfragen zu gültigen Antworten führen, und welche Eigenschaften der Antwort lesbar sind.
Um eine Anfrage mit einem bestimmten Modus zu erstellen, übergeben Sie den gewünschten Wert als RequestInit.mode
-Option an den Request.Request()
-Konstruktor.
Beachten Sie, dass das Setzen bestimmter Modi, insbesondere no-cors
, Einschränkungen hinsichtlich der verwendbaren Anfragemethoden und Header mit sich bringt und verhindert, dass JavaScript auf die Antwort-Header oder den Antwort-Body zugreifen kann. Weitere Details finden Sie in der Dokumentation zu RequestInit.mode
.
Wert
Einer der folgenden Werte:
same-origin
-
Verbietet Cross-Origin-Anfragen. Wenn bei diesem Modus eine Anfrage an einen anderen Ursprung gestellt wird, führt dies zu einem Fehler.
no-cors
-
Deaktiviert CORS für Cross-Origin-Anfragen. Die Antwort ist opak, was bedeutet, dass ihre Header und der Body für JavaScript nicht verfügbar sind.
cors
-
Wenn die Anfrage cross-origin ist, wird der Cross-Origin Resource Sharing (CORS)-Mechanismus verwendet.
-
Ein Modus zur Unterstützung der Navigation. Der Wert
navigate
ist nur für HTML-Navigation vorgesehen. Eine Navigate-Anfrage wird nur beim Navigieren zwischen Dokumenten erstellt.
Standardmodus
Anfragen können auf verschiedene Weisen initiiert werden, und der Modus einer Anfrage hängt von der spezifischen Art ab, wie sie initiiert wurde.
Zum Beispiel wird, wenn ein Request
-Objekt mit dem
Request()
-Konstruktor erstellt wird, der Wert der mode
-Eigenschaft
dieser Request
auf cors
gesetzt.
Jedoch wird für Anfragen, die nicht über den Request()
-Konstruktor
erstellt werden, typischerweise no-cors
als Modus verwendet; zum Beispiel für
eingebettete Ressourcen, bei denen die Anfrage aus Markup initiiert wird, es sei denn, das
crossorigin
-
Attribut ist vorhanden, wird die Anfrage in den meisten Fällen im no-cors
-Modus durchgeführt — das ist der Fall bei <link>
, <script>
-Elementen
(außer bei der Verwendung mit Modulen) oder <img>
, <audio>
,
<video>
, <object>
, <embed>
oder
<iframe>
-Elementen.
Beispiele
Im folgenden Snippet erstellen wir eine neue Anfrage mit dem
Request()
-Konstruktor (für eine Bilddatei im selben Verzeichnis wie das
Skript) und speichern dann 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② |