Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

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 verwenden zu können, muss eine Erweiterung die Berechtigung "cookies" sowie relevante Host-Berechtigungen haben. Siehe cookie Berechtigungen für weitere Details.

Syntax

js
let setting = browser.cookies.set(
  details               // object
)

Parameter

details

Ein object, das die Details des zu setzenden Cookies enthält. Es kann diese Eigenschaften haben:

domain Optional

Ein string, der die Domain des Cookies darstellt. Falls weggelassen, wird das Cookie zu einem Host-only-Cookie.

expirationDate Optional

Ein number, der das Ablaufdatum des Cookies in Sekunden nach dem UNIX-Epoch angibt. Es kann Millisekunden im Bruchteil enthalten. Wenn weggelassen, wird das Cookie zu einem Sitzungs-Cookie.

firstPartyDomain Optional

Ein string, das die First-Party-Domain darstellt, mit der das Cookie verknüpft ist. Diese Eigenschaft muss angegeben werden, wenn der Browser die First-Party-Isolation aktiviert hat. Siehe First-Party-Isolation.

httpOnly Optional

Ein boolean, der angibt, ob das Cookie als HttpOnly (true) markiert ist oder nicht (false). Wenn weggelassen, ist der Standardwert false.

name Optional

Ein string, der den Namen des Cookies darstellt. Falls weggelassen, ist der Name standardmäßig ein leerer String ("").

partitionKey Optional

Ein object, das die Speicherpartition repräsentiert, 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 obersten Site-Speicherpartition enthält, die das Cookie enthält.

path Optional

Ein string, der den Pfad des Cookies darstellt. Wenn weggelassen, ist dies standardmäßig der Pfadanteil des URL-Parameters.

sameSite Optional

Ein cookies.SameSiteStatus Wert, der den SameSite-Zustand des Cookies angibt. Wenn weggelassen, ist der Standard unspecified.

secure Optional

Ein boolean, der angibt, ob das Cookie als sicher (true) markiert ist oder nicht (false). Wenn weggelassen, ist der Standardwert false.

storeId Optional

Ein string, der die ID des Cookie-Speichers darstellt, in dem das Cookie gesetzt werden soll. Wenn weggelassen, wird das Cookie im Cookiespeicher des aktuellen Ausführungskontexts gesetzt.

url

Ein string, der die Request-URI darstellt, die mit dem Cookie verknüpft werden soll. Dieser Wert kann die standardmäßigen Domain- und Pfadwerte des erstellten Cookies beeinflussen. Falls für diese URL keine Host-Berechtigungen in der Manifest-Datei angegeben sind, schlägt der Methodenaufruf fehl.

value Optional

Ein string, der den Wert des Cookies darstellt. Falls weggelassen, ist der Wert standardmäßig ein leerer String ("").

Rückgabewert

Ein Promise, das mit einem cookies.Cookie Objekt erfüllt wird, das Details über das gesetzte Cookie enthält.

Wenn es mehr als ein Cookie mit demselben Namen für eine URL gibt, wird das Cookie mit dem längsten Pfad zurückgegeben. Für Cookies mit derselben 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, hat Firefox das Cookie mit der frühesten Erstellungszeit zurückgegeben.

Wenn das angeforderte Cookie ungültig ist oder der Aufruf aus anderen Gründen fehlschlägt, wird das Promise mit einer Fehlermeldung zurückgewiesen.

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:

js
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

Hinweis: Diese API basiert auf der Chromium-API chrome.cookies. Diese Dokumentation stammt von cookies.json im Chromium-Code.