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
modede la requête estnavigateouwebsocket.
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é
statusest à0,bodyestnull, 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éstatusest à0,bodyestnull, 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éstatusest à0,bodyestnull, 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 :
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 :
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 :
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 :
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
- L'API ServiceWorker
- Contrôle d'accès HTTP (CORS)
- La référence HTTP