cookies.set()
Setzt ein Cookie. Diese Methode entspricht dem Senden eines HTTP-Set-Cookie
-Headers während einer Anfrage an eine URL.
Um diese Methode zu verwenden, muss eine Erweiterung die Berechtigung "cookies"
und relevante Host-Berechtigungen haben. Weitere Informationen finden Sie unter cookie
permissions.
Syntax
let setting = browser.cookies.set(
details // object
)
Parameter
details
-
Ein
object
, das die Details des Cookies enthält, das Sie setzen möchten. Es kann die folgenden Eigenschaften haben:domain
Optional-
Ein
string
, der die Domain des Cookies darstellt. Wenn weggelassen, wird das Cookie zu einem Host-Only-Cookie. expirationDate
Optional-
Eine
number
, die das Ablaufdatum des Cookies in Sekunden nach dem UNIX-Epoch darstellt. Kann Millisekunden im Bruchteil enthalten. Wenn weggelassen, wird das Cookie zu einem Sitzungscookie. firstPartyDomain
Optional-
Ein
string
, der die First-Party-Domain repräsentiert, mit der das Cookie verknüpft ist. Diese Eigenschaft muss angegeben werden, wenn der Browser die First-Party-Isolierung aktiviert hat. Siehe First-party isolation. httpOnly
Optional-
Ein
boolean
, das angibt, ob das Cookie als HttpOnly (true
) markiert ist oder nicht (false). Wenn weggelassen, ist der Standardwert false. name
Optional-
Ein
string
, das den Namen des Cookies darstellt. Wenn weggelassen, ist dies standardmäßig leer. partitionKey
Optional-
Ein
object
, das die storage partition darstellt, in der das Cookie gesetzt werden soll. Schließen Sie dieses Objekt ein, um ein Cookie im partitionierten Speicher zu setzen. Dieses Objekt enthält:topLevelSite
Optional-
Ein
string
, das die First-Party-URL der Top-Level-Site-Speicherpartition darstellt, die das Cookie enthält.
path
Optional-
Ein
string
, das den Pfad des Cookies darstellt. Wenn weggelassen, ist dies standardmäßig der Pfadabschnitt des URL-Parameters. sameSite
Optional-
Ein
cookies.SameSiteStatus
-Wert, der den SameSite-Status des Cookies angibt. Wenn weggelassen, ist der Standardwertunspecified
. secure
Optional-
Ein
boolean
, das angibt, ob das Cookie als sicher (true
) markiert ist oder nicht (false). Wenn weggelassen, ist der Standardwert false. storeId
Optional-
Ein
string
, das die ID des Cookie-Stores darstellt, in dem das Cookie gesetzt werden soll. Wenn weggelassen, wird das Cookie im Cookie-Store des aktuellen Ausführungskontexts gesetzt. url
-
Ein
string
, das die Anfrage-URI darstellt, die mit dem Cookie verknüpft ist. Dieser Wert kann die Standardwerte für Domain und Pfad des erstellten Cookies beeinflussen. Wenn für diese URL keine Host-Berechtigungen in der Manifestdatei angegeben sind, schlägt der Methodenaufruf fehl. value
Optional-
Ein
string
, das den Wert des Cookies darstellt. Wenn weggelassen, ist dies standardmäßig leer.
Rückgabewert
Ein Promise
, das mit einem cookies.Cookie
-Objekt erfüllt wird, das Details über das gesetzte Cookie enthält.
Wenn mehr als ein Cookie mit demselben Namen für eine URL existiert, wird das Cookie mit dem längsten Pfad zurückgegeben. Bei Cookies mit gleicher Pfadlänge wird das Cookie mit der frühesten Erstellungszeit zurückgegeben.
Hinweis: Vor Firefox 133, wenn es mehr als ein Cookie mit demselben Namen gab, gab Firefox das Cookie mit der frühesten Erstellungszeit zurück.
Wenn das angeforderte Cookie ungültig ist oder der Aufruf anderweitig fehlschlägt, wird das Promise mit einer Fehlermeldung abgelehnt.
Hinweis: Vor Firefox 145 wurden ungültige Cookies erstellt.
Beispiele
Dieses Beispiel setzt ein Cookie für das Dokument, das durch den aktiven Tab gehostet wird:
let getActive = browser.tabs.query({ active: true, currentWindow: true });
getActive.then(setCookie);
function setCookie(tabs) {
browser.cookies.set({
url: tabs[0].url,
name: "favorite-color",
value: "red",
});
}
Beispielerweiterungen
Browser-Kompatibilität
Loading…
Hinweis:
Diese API basiert auf der chrome.cookies
-API von Chromium. Diese Dokumentation ist abgeleitet von cookies.json
im Chromium-Code.