Request: clone()-Methode

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.

Hinweis: Dieses Feature ist verfügbar in Web Workers.

Die clone()-Methode der Request-Schnittstelle erstellt eine Kopie des aktuellen Request-Objekts.

Ähnlich der zugrunde liegenden ReadableStream.tee-API, wird der body einer geklonten Response den Rückdruck in der Geschwindigkeit des schnelleren Verbrauchers der beiden Bodies signalisieren, und nicht gelesene Daten werden intern im langsamer konsumierten body ohne Begrenzung oder Rückdruck in die Warteschlange gestellt. Vorsicht beim Erstellen eines Request aus einem Stream und dessen anschließenden clone.

clone() wirft einen TypeError, wenn der Anfragetext bereits verwendet wurde. Tatsächlich besteht der Hauptgrund für die Existenz von clone() darin, eine mehrfache Verwendung von Body-Objekten zu ermöglichen (wenn sie nur einmal verwendet werden können).

Wenn Sie beabsichtigen, die Anfrage zu ändern, ziehen Sie möglicherweise den Request-Konstruktor vor.

Syntax

js
clone()

Parameter

Keine.

Rückgabewert

Ein Request-Objekt, das eine exakte Kopie des Request ist, auf dem clone() aufgerufen wurde.

Beispiele

Im folgenden Beispiel erstellen wir eine neue Anfrage mit dem Request()-Konstruktor (für eine Bilddatei im selben Verzeichnis wie das Skript) und klonen dann die Anfrage.

js
const myRequest = new Request("flowers.jpg");
const newRequest = myRequest.clone(); // a copy of the request is now stored in newRequest

Spezifikationen

Specification
Fetch Standard
# ref-for-dom-request-clone①

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch