cookies.set()
Die set()
-Methode der cookies
API setzt ein Cookie mit den angegebenen Cookie-Daten. Diese Methode entspricht dem Senden eines HTTP Set-Cookie
-Header bei einer Anfrage an eine gegebene URL.
Der Aufruf ist nur erfolgreich, wenn Sie die "cookies" API-Berechtigung in Ihrer manifest.json-Datei einfügen, sowie Host-Berechtigungen für die angegebene URL, die in ihrem Manifest angegeben ist. Die angegebene URL benötigt außerdem die erforderlichen Berechtigungen, um ein Cookie mit den angegebenen Parametern zu erstellen.
Dies ist eine asynchrone Funktion, die ein Promise
zurückgibt.
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 Domäne des Cookies repräsentiert. Wenn ausgelassen, wird das Cookie zu einem host-spezifischen Cookie. expirationDate
Optional-
Eine
number
, die das Ablaufdatum des Cookies als die Anzahl der Sekunden seit der UNIX-Epoche darstellt. Wenn ausgelassen, wird das Cookie zu einem Sitzungscookie. firstPartyDomain
Optional-
Ein
string
, der die First-Party-Domäne repräsentiert, mit der das Cookie verknüpft wird. 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 werden soll oder nicht (false). Wenn ausgelassen, ist der Standardwert false. name
Optional-
Ein
string
, der den Namen des Cookies darstellt. Wenn ausgelassen, ist dieser standardmäßig leer. 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 in partitioniertem Speicher zu setzen. Dieses Objekt enthält:topLevelSite
Optional-
Ein
string
, das die First-Party-URL der obersten Speicherpartition des Webseiten-Headers enthält, die das Cookie enthält.
path
Optional-
Ein
string
, der den Pfad des Cookies repräsentiert. Wenn ausgelassen, ist der Standardwert der Pfadanteil des URL-Parameters. sameSite
Optional-
Ein
cookies.SameSiteStatus
-Wert, der den SameSite-Status des Cookies angibt. Wenn ausgelassen, ist der Standardwert 0, 'no_restriction'. secure
Optional-
Ein
boolean
, der angibt, ob das Cookie als sicher (true
) markiert werden soll oder nicht (false). Wenn ausgelassen, ist der Standardwert false. storeId
Optional-
Ein
string
, das die ID des Cookie-Speicherorts repräsentiert, in dem das Cookie gesetzt werden soll. Wenn ausgelassen, wird das Cookie standardmäßig im Cookie-Speicher des aktuellen Ausführungskontexts gesetzt. url
-
Ein
string
, der die Anforderungs-URI repräsentiert, die mit dem Cookie verknüpft werden soll. Dieser Wert kann die Standard-Domänen- und Pfadwerte des erstellten Cookies beeinflussen. Wenn im Manifest keine Host-Berechtigungen für diese URL angegeben sind, wird der Methodenaufruf fehlschlagen. value
Optional-
Ein
string
, das den Wert des Cookies repräsentiert. Wenn ausgelassen, ist dieser 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 der Aufruf aus irgendeinem Grund fehlschlägt, wird das Promise mit einer Fehlermeldung abgelehnt.
Browser-Kompatibilität
BCD tables only load in the browser
Beispiele
Dieses Beispiel setzt ein Cookie für das Dokument, das vom derzeit 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",
});
}
Beispiel-Erweiterungen
Hinweis: Diese API basiert auf der chrome.cookies
-API von Chromium. Diese Dokumentation stammt von cookies.json
im Chromium-Code.