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.

* Some parts of this feature may have varying levels of support.

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 code 200 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 un ArrayBuffer lorsqu'elle est résolue.

Body.blob()

Prend le stream de la Response et le lit jusqu'à la fin. Renvoie une promise qui retourne un Blob lorsqu'elle est résolue.

Body.formData()

Prend le stream de la Response et le lit jusqu'à la fin. Renvoie une promise qui retourne un FormData 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, comme JSON ,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 un USVString (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.

js
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:

js
var myResponse = new Response();

Spécifications

Specification
Fetch
# response-class

Compatibilité des navigateurs

Report problems with this compatibility data on GitHub
desktopmobileserver
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Deno
Node.js
Response
Response() constructor
body parameter accepts ReadableByteStream
body parameter is optional
arrayBuffer
blob
body
body is a readable byte stream
bodyUsed
bytes
clone
error() static method
formData
headers
json
json_static
ok
redirect() static method
redirected
status
statusText
text
type
url

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
Partial support
Partial support
In development. Supported in a pre-release version.
In development. Supported in a pre-release version.
No support
No support
Has more compatibility info.

Voir aussi