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
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.
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
- L'API ServiceWorker
- Contrôle d'accès HTTP (CORS)
- La référence HTTP