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
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:domainOptional-
Ein
string, der die Domain des Cookies darstellt. Falls weggelassen, wird das Cookie zu einem Host-only-Cookie. expirationDateOptional-
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. firstPartyDomainOptional-
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. httpOnlyOptional-
Ein
boolean, der angibt, ob das Cookie als HttpOnly (true) markiert ist oder nicht (false). Wenn weggelassen, ist der Standardwertfalse. nameOptional-
Ein
string, der den Namen des Cookies darstellt. Falls weggelassen, ist der Name standardmäßig ein leerer String (""). partitionKeyOptional-
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:topLevelSiteOptional-
Ein
string, das die First-Party-URL der obersten Site-Speicherpartition enthält, die das Cookie enthält.
pathOptional-
Ein
string, der den Pfad des Cookies darstellt. Wenn weggelassen, ist dies standardmäßig der Pfadanteil des URL-Parameters. sameSiteOptional-
Ein
cookies.SameSiteStatusWert, der den SameSite-Zustand des Cookies angibt. Wenn weggelassen, ist der Standardunspecified. secureOptional-
Ein
boolean, der angibt, ob das Cookie als sicher (true) markiert ist oder nicht (false). Wenn weggelassen, ist der Standardwertfalse. storeIdOptional-
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. valueOptional-
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:
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.