cookies.set()

La méthode set() de l'API cookies définit un cookie contenant des données précises de cookie. Cette méthode équivaut à l'émission d'un en-tête HTTP Set-Cookie lors d'une requête à une URL donnée.

L'appel réussit uniquement si vous incluez la permission de l'API "cookies" dans votre fichier manifest.json, ainsi que les permissions d'hôte pour l'URL indiquée dans son manifest. L’URL donnée a également besoin des permissions nécessaires pour créer un cookie avec les paramètres donnés.

C'est une fonction asynchrone qui renvoie une Promise.

Syntaxe

var setting = browser.cookies.set(
  details               // object
)

Paramètres

details
Un objet contenant les détails du cookie que vous souhaitez définir. Il peut avoir les propriétés suivantes :
domainFacultatif
Une chaîne représentant le domaine du cookie. S’il est omis, le cookie devient un cookie hôte uniquement.
expirationDateFacultatif
Un nombre qui représente la date d'expiration du cookie en tant que nombre de secondes écoulées depuis l'époque UNIX. S’il est omis, le cookie devient un cookie de session.
firstPartyDomainFacultatif
Une chaîne représentant le domaine de première partie avec lequel le cookie sera associé. Cette propriété doit être fournie si l'isolation de la première partie est activée sur le navigateur. Voir Isolement de la première partie.
httpOnlyFacultatif
Un booléen qui spécifie si le cookie doit être marqué comme  HttpOnly (true), ou pas (false). S’il est omis, la valeur par défaut est false.
nameFacultatif
Une chaîne représentant le nom du cookie. S’il est omis, il est vide par défaut.
pathFacultatif
Une chaîne représentant le chemin du cookie. S’il est omis, la valeur par défaut est la partie du chemin du paramètre de l'URL.
sameSiteFacultatif
Une valeur cookies.SameSiteStatus qui indique l’état SameSite du cookie. Si omis, la valeur par défaut 0, 'no_restriction'.
secureFacultatif
Un booléen qui spécifie si le cookie doit être marqué comme sécurisé (true), ou pas (false). S’il est omis, la valeur par défaut est false.
storeIdFacultatif
Une chaîne représentant l’ID du cookie store dans lequel défini le cookie. S’il est omiS, le cookie est défini par défaut dans le cookie store du contexte d'exécution actuel.
url
Une chaîne représentant l'URI de requête à associer au cookie. Cette valeur peut affecter les valeurs par défaut du cookie créé. Si les autorisations d'hôte pour cette URL ne sont pas spécifiées dans le fichier manifest, l’appel de la méthode échouera.
valueFacultatif
Une chaîne représentant la valeur du cookie. S’il est omis, c’est vide par défaut.

Valeur retournée

Une Promise qui sera remplie avec un objet  cookies.Cookie contenant les détails sur le cookie qui a été défini. Si l'appel échoue pour une quelconque raison, la promesse sera rejetée avec un message d’erreur.

Compatibilité du navigateur

Update compatibility data on GitHub
OrdinateurMobile
ChromeEdgeFirefoxOperaFirefox pour Android
Support simpleChrome Support complet OuiEdge Support complet 14Firefox Support complet 45
Notes
Support complet 45
Notes
Notes Before version 56, this function did not modify cookies in private browsing mode. From version 56 onwards this is fixed.
Opera Support complet OuiFirefox Android Support complet 48
Notes
Support complet 48
Notes
Notes Before version 56, this function did not modify cookies in private browsing mode. From version 56 onwards this is fixed.
firstPartyDomainChrome Aucun support NonEdge Aucun support NonFirefox Support complet 59Opera Aucun support NonFirefox Android Support complet 59

Légende

Support complet  
Support complet
Aucun support  
Aucun support
Voir les notes d'implémentation.
Voir les notes d'implémentation.

Exemples

Cet exemple définit un cookie pour le document hébergé par l'onglet actuellement actif :

var getActive = browser.tabs.query({active: true, currentWindow: true});
getActive.then(setCookie);

function setCookie(tabs) {
  browser.cookies.set({
    url: tabs[0].url,
    name: "favourite-colour",
    value: "red"
  });
}

Example extensions

Remerciements :

Cette API est basée sur l'API Chromium chrome.cookies. Cette documentation est dérivée de cookies.json dans le code Chromium.

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

Étiquettes et contributeurs liés au document

Contributeurs à cette page : P45QU10U, hellosct1
Dernière mise à jour par : P45QU10U,