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

BCD tables only load in the browser

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.