Response
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.
L'interface Response
de l'API de fetch représente la réponse d'une requête initialisée.
Vous pouvez créer un nouvel objet Response
en utilisant le constructeur Response.Response()
. Cependant, vous rencontrerez plus fréquemment l'objet Response comme étant le résultat d'une opération de l'API, par exemple, un service worker Fetchevent.respondWith
, ou un simple GlobalFetch.fetch()
.
Constructeur
Response()
-
Crée un nouvel objet
Response
.
Propriétés
Response.headers
Lecture seule-
Contient les objets
Headers
associés à la réponse. Response.ok
Lecture seule-
Contient un booléen statuant s'il s'agit d'une réponse indiquant un succès (statut HTTP entre 200 et 299) ou non.
Response.redirected
Lecture seule-
Indique si oui ou non la réponse est le résultat d'une (ou plusieurs) redirection(s), c'est-à-dire que sa liste d'URLs a plus d'une entrée.
Response.status
Lecture seule-
Contient le status code de la réponse (par exemple
200
en cas de réussite). Response.statusText
Lecture seule-
Contient le message du statut correspondant au status code (à savoir :
OK
pour le code200
par exemple). Response.type
Lecture seule-
Contient le type de la réponse (par exemple,
basic
,cors
). Response.url
Lecture seule-
Contient l'URL de la réponse.
Response.useFinalURL
-
Contient un booléen statuant s'il s'agit de l'URL finale de la réponse.
Par ailleurs, Response
implémente également une propriété Body
, voici les propriétés qui lui sont propres :
Body.body
Lecture seule-
Un simple getter utilisé afin d'exposer un
ReadableStream
permettant de lire le contenu du body. Body.bodyUsed
Lecture seule-
Stocke un
Boolean
qui indique si le body a déjà été utilisé dans la réponse ou non.
Méthodes
Response.clone()
-
Crée un clone de l'objet
Response
. Response.error()
-
Retourne un nouvel objet
Response
associé à une erreur réseau. Response.redirect()
-
Crée une nouvelle réponse avec une URL différente permettant de rediriger l'utilisateur.
Response
implémente Body
, voici les différentes méthodes qui sont disponibles:
Body.arrayBuffer()
-
Prend le stream de la
Response
et le lit jusqu'à la fin. Renvoie une promise qui retourne unArrayBuffer
lorsqu'elle est résolue. Body.blob()
-
Prend le stream de la
Response
et le lit jusqu'à la fin. Renvoie une promise qui retourne unBlob
lorsqu'elle est résolue. Body.formData()
-
Prend le stream de la
Response
et le lit jusqu'à la fin. Renvoie une promise qui retourne unFormData
lorsqu'elle est résolue. Body.json()
-
Prend le stream de la
Response
et le lit jusqu'à la fin. Renvoie une promise qui retourne le résultat du parsing du body text, commeJSON
,lorsqu'elle est résolue. Body.text()
-
Prend le stream de la
Response
et le lit jusqu'à la fin. Renvoie une promise qui est résolue avec unUSVString
(text).
Exemples
Dans notre exemple basique d'utilisation de fetch()
(voir l'exemple en direct), nous utilisons un simple appel fetch()
pour récupérer une image et l'afficher dans un élément <img>
. L'appel fetch()
retourne une promesse qui est résolue avec un objet Response
associé à l'opération de récupération de la ressource.
Vous remarquerez que puisque nous récupérons une image, nous avons besoin d'utiliser Response.blob
pour attribuer le bon type MIME à la réponse.
var myImage = document.querySelector(".my-image");
fetch("flowers.jpg")
.then(function (response) {
return response.blob();
})
.then(function (blob) {
var objectURL = URL.createObjectURL(blob);
myImage.src = objectURL;
});
Vous pouvez également utiliser le constructeur Response.Response()
pour créer votre propre objet Response
:
var myResponse = new Response();
Spécifications
Specification |
---|
Fetch Standard # response-class |
Compatibilité des navigateurs
BCD tables only load in the browser