Headers : méthode getSetCookie()
Baseline
Large disponibilité
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis septembre 2023.
Note : Cette fonctionnalité est disponible via les Web Workers.
La méthode getSetCookie() de l'interface Headers retourne un tableau contenant les valeurs de toutes les en-têtes Set-Cookie associé à une réponse. Cela permet aux objets Headers de gérer plusieurs en-têtes Set-Cookie, ce qui n'était pas possible avant sa mise en œuvre.
Cette méthode est destinée à être utilisée dans des environnements serveur (par exemple Node.js). Les navigateurs empêchent le code JavaScript côté client d'accéder à l'en-tête Set-Cookie, conformément à la spécification Fetch, qui définit Set-Cookie comme un nom d'en-tête de réponse interdit (angl.) qui doit être filtré (angl.) de toute réponse exposée au code front-end.
Syntaxe
getSetCookie()
Paramètres
Aucun.
Valeur de retour
Un tableau de chaînes de caractères représentant les valeurs de toutes les en-têtes Set-Cookie différentes, associées à une réponse.
Si aucun en-tête Set-Cookie n'est défini, la méthode retourne un tableau vide ([ ]).
Exemples
Comme mentionné précédemment, l'exécution de code comme suit côté client ne retourne aucun résultat — Set-Cookie est filtré des Headers récupérés sur le réseau.
fetch("https://example.com").then((response) => {
console.log(response.headers.getSetCookie());
// Aucune valeur d'en-tête retournée
});
Cependant, ce qui suit pourrait être utilisé pour interroger plusieurs valeurs Set-Cookie. Cela est beaucoup plus utile côté serveur, mais cela fonctionnerait également côté client.
const enTetes = new Headers({
"Set-Cookie": "name1=value1",
});
enTetes.append("Set-Cookie", "name2=value2");
enTetes.getSetCookie();
// Retourne ["name1=value1", "name2=value2"]
Spécifications
| Spécification |
|---|
| Fetch> # dom-headers-getsetcookie> |
Compatibilité des navigateurs
Voir aussi
- HTTP
- L'en-tête
Set-Cookie