Response
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()
(en-US). 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
(en-US), ou un simple GlobalFetch.fetch()
.
Constructeur
Response()
(en-US)-
Crée un nouvel objet
Response
.
Propriétés
Response.headers
(en-US) 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
(en-US) 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
(en-US) Lecture seule-
Contient le status code de la réponse (par exemple
200
en cas de réussite). Response.statusText
(en-US) Lecture seule-
Contient le message du statut correspondant au status code (à savoir :
OK
pour le code200
par exemple). Response.type
(en-US) Lecture seule-
Contient le type de la réponse (par exemple,
basic
,cors
). Response.url
(en-US) 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
(en-US) Lecture seule-
Un simple getter utilisé afin d'exposer un
ReadableStream
(en-US) permettant de lire le contenu du body. Body.bodyUsed
(en-US) Lecture seule-
Stocke un
Boolean
(en-US) qui indique si le body a déjà été utilisé dans la réponse ou non.
Méthodes
Response.clone()
(en-US)-
Crée un clone de l'objet
Response
. Response.error()
(en-US)-
Retourne un nouvel objet
Response
associé à une erreur réseau. Response.redirect()
(en-US)-
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()
(en-US)-
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()
(en-US)-
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()
(en-US)-
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()
(en-US)-
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()
(en-US)-
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
(en-US) 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()
(en-US) 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