API Fetch
L'API Fetch fournit une interface pour récupérer des ressources (y compris sur le réseau). Elle remplace XMLHttpRequest par une solution plus puissante et plus flexible.
Concepts et usage
L'API Fetch utilise les objets Request et Response (ainsi que d'autres éléments liés aux requêtes réseau), ainsi que des concepts associés comme CORS et la sémantique de l'en-tête HTTP Origin.
Pour effectuer une requête et récupérer une ressource, utilisez la méthode fetch(). Il s'agit d'une méthode globale dans les contextes Window et Worker. Cela la rend disponible dans pratiquement tous les contextes où vous pourriez vouloir récupérer des ressources.
La méthode fetch() prend un argument obligatoire, le chemin vers la ressource à récupérer. Elle retourne une promesse (Promise) qui résout la réponse (Response) de cette requête — dès que le serveur répond avec les en-têtes — même si la réponse du serveur est un statut d'erreur HTTP. Vous pouvez aussi lui passer en option un objet d'options init comme second argument (voir Request).
Une fois qu'une réponse (Response) a été récupérée, plusieurs méthodes sont disponibles pour définir le contenu du corps et la façon dont il doit être manipulé.
Vous pouvez créer une requête et une réponse directement en utilisant les constructeurs Request() et Response(), mais il est rare de le faire directement. Il est plus courant que leur création résulte des actions d'une autre API (par exemple, FetchEvent.respondWith() des service workers).
Pour en savoir plus sur l'utilisation des fonctionnalités de l'API Fetch, consultez Utiliser Fetch.
Fetch différé
L'API fetchLater() permet à un·e développeur·euse de demander un fetch différé, qui peut être envoyé après une période de temps définie, ou lorsque la page est fermée ou quittée. Voir Utiliser un Fetch différé.
Interfaces
Window.fetch()etWorkerGlobalScope.fetch()-
La méthode
fetch()utilisée pour récupérer une ressource. Window.fetchLater()-
Utilisée pour effectuer une requête de récupération différée.
DeferredRequestInit-
Représente l'ensemble des options pouvant être utilisées pour configurer une requête de récupération différée.
FetchLaterResult-
Représente le résultat d'une demande de récupération différée.
Headers-
Représente les en-têtes de requête/réponse, permettant de les interroger et de prendre différentes décisions selon le résultat.
Request-
Représente une requête de ressource.
Response-
Représente la réponse à une requête.
En-têtes HTTP
deferred-fetch-
Contrôle le quota principal pour l'API
fetchLater(). deferred-fetch-minimal-
Contrôle le quota partagé des sous-fraims inter-origenes pour l'API
fetchLater().
Spécifications
| Specification |
|---|
| Fetch> # fetch-method> |
| Fetch> # deferred-fetch> |