--- title: Response slug: Web/API/Response tags: - API - Experimental - Fetch - Fetch API - Interface - Reference - Response translation_of: Web/API/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 {{domxref("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 {{domxref("Fetchevent.respondWith")}}, ou un simple {{domxref("GlobalFetch.fetch()")}}.
Response
.200
en cas de réussite).OK
pour le code 200
par exemple).basic
, cors
).Par ailleurs, Response
implémente également une propriété {{domxref("Body")}}, voici les propriétés qui lui sont propres :
Response
.Response
associé à une erreur réseau.Response
implémente {{domxref("Body")}}, voici les différentes méthodes qui sont disponibles:
Dans notre exemple basique d'utilisation de fetch (exemple), nous utilisons un simple appel fetch()
pour récupérer une image et l'afficher dans un tag {{htmlelement("img")}}. L'appel fetch()
retourne une promise 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 {{domxref("Body.blob")}} (disponible dans le body de la {{domxref("Response")}}) pour attribuer le bon MIME type à 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 {{domxref("Response.Response()")}} pour créer votre propre objet Response
:
var myResponse = new Response();
Spécification | Statut | Commentaire |
---|---|---|
{{SpecName('Fetch','#response-class','Response')}} | {{Spec2('Fetch')}} | Définition initiale |
{{CompatibilityTable}}
Fonctionnalité | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|---|
Basic support | {{CompatChrome(42)}} | {{CompatVersionUnknown}} | {{CompatGeckoDesktop(34)}} [1] {{CompatGeckoDesktop(39)}} |
{{CompatNo}} | {{CompatOpera(29)}} | 10.1 |
Body.formData attribute |
{{CompatChrome(60)}} | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatNo}} | {{CompatOpera(47)}} | {{CompatUnknown}} |
redirected attribute |
{{CompatChrome(57)}} | {{CompatUnknown}} | {{CompatGeckoDesktop(49)}} | {{CompatNo}} | {{CompatOpera(44)}} | {{CompatNo}} |
Fonctionnalité | Android Webview | Chrome pour Android | Edge | Firefox Mobile (Gecko) | Firefox OS (Gecko) | IE Phone | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|---|---|
Basic support | {{CompatChrome(42)}} | {{CompatChrome(42)}} | {{CompatVersionUnknown}} | {{CompatGeckoMobile(34)}} [1] {{CompatGeckoMobile(39)}} |
{{CompatUnknown}} | {{CompatNo}} | {{CompatOperaMobile(29)}} | {{CompatNo}} |
Body.formData attribute |
{{CompatChrome(60)}} | {{CompatChrome(60)}} | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatNo}} | {{CompatOperaMobile(47)}} | {{CompatNo}} |
redirected attribute |
{{CompatChrome(57)}} | {{CompatChrome(57)}} | {{CompatUnknown}} | {{CompatGeckoMobile(49)}} | {{CompatUnknown}} | {{CompatNo}} | {{CompatOperaMobile(44)}} | {{CompatNo}} |
[1] Disponible comme préférence jusqu'à Firefox 39.