Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in English Always switch to English

Request : méthode clone()

Baseline Widely available

Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis mars 2017.

Note : Cette fonctionnalité est disponible via les Web Workers.

La méthode clone() de l'interface Request crée une copie de l'objet Request actuel.

Comme l'API sous-jacente ReadableStream.tee, le body d'une Request clonée signalera la contre-pression au rythme du consommateur le plus rapide des deux corps, et les données non lues sont mises en file d'attente en interne sur le body consommé plus lentement, sans aucune limite ni contre-pression. Faites attention lorsque vous construisez une Request à partir d'un flux puis que vous la clonez.

clone() lève une exception TypeError si le corps de la requête a déjà été utilisé. En fait, la principale raison d'existence de clone() est de permettre plusieurs utilisations des objets body (lorsqu'ils ne peuvent être utilisés qu'une seule fois).

Si vous souhaitez modifier la requête, il peut être préférable d'utiliser le constructeur Request.

Syntaxe

js
clone()

Paramètres

Aucun.

Valeur de retour

Un objet Request, qui est une copie exacte de la Request sur laquelle clone() a été appelé.

Exemples

Dans l'extrait de code suivant, nous créons une nouvelle requête à l'aide du constructeur Request() (pour un fichier image dans le même répertoire que le script), puis nous clonons la requête.

js
const maRequete = new Request("fleurs.jpg");
const nouvelleRequete = maRequete.clone(); // une copie de la requête est maintenant stockée dans nouvelleRequete

Spécifications

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

Compatibilité des navigateurs

Voir aussi