Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in English Always switch to English

Response : propriété type

Baseline Widely available

Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis mars 2017.

Note : Cette fonctionnalité est disponible via les Web Workers.

La propriété en lecture seule type de l'interface Response contient le type de la réponse. Le type détermine si les scripts peuvent accéder au corps et aux en-têtes de la réponse.

Valeur

Une chaîne de caractères, qui peut prendre l'une des valeurs suivantes :

basic

Cela s'applique dans l'un des cas suivants :

  • La requête est de même origine.
  • Le schéma de l'URL demandée est data:.
  • Le mode de la requête est navigate ou websocket.

Avec ce type, tous les en-têtes de réponse sont exposés sauf Set-Cookie.

cors

La requête était cross-origin et a été traitée avec succès à l'aide du CORS. Avec ce type, seuls les en-têtes de réponse autorisés par CORS sont exposés.

error

Une erreur réseau s'est produite. La propriété status est à 0, body est null, les en-têtes sont vides et immuables.

C'est le type de réponse retourné par Response.error(). Une réponse de ce type n'est pas retournée par un appel à fetch(), car si une erreur réseau se produit, la promesse est rejetée.

opaque

Une réponse à une requête cross-origin dont le mode était défini à no-cors. La propriété status est à 0, body est null, les en-têtes sont vides et immuables.

opaqueredirect

Une réponse à une requête dont l'option redirect était définie à manual, et qui a été redirigée par le serveur. La propriété status est à 0, body est null, les en-têtes sont vides et immuables.

Exemples

Une réponse simple

La requête suivante de même origine retournera une réponse basic :

js
const reponse = await fetch("fleurs.jpg");

console.log(reponse.type); // "basic"

Une réponse CORS

En supposant que https://exemple.org n'est pas l'origine du demandeur, et que le serveur répond avec les en-têtes CORS appropriés, cette requête retournera une réponse cors :

js
const reponse = await fetch("https://exemple.org/fleurs.jpg");

console.log(reponse.type); // "cors"

Une réponse opaque

La requête suivante est effectuée avec l'option no-cors, elle retourne donc une réponse opaque :

js
const reponse = await fetch("https://exemple.org/fleurs.jpg", {
  mode: "no-cors",
});

console.log(reponse.type); // "opaque"
console.log(reponse.body); // null
console.log(reponse.status); // 0

Une réponse error

Le code suivant utilise Response.error() pour créer une réponse error :

js
const reponse = Response.error();

console.log(reponse.type); // "error"
console.log(reponse.body); // null
console.log(reponse.status); // 0

Spécifications

Specification
Fetch
# dom-response-type

Compatibilité des navigateurs

Voir aussi