chrome.cookies (original) (raw)

Zum Hauptinhalt springen

chrome.cookies

Beschreibung

Mit der chrome.cookies API können Sie Cookies abfragen und ändern und sich benachrichtigen lassen, wenn sie sich ändern.

Berechtigungen

cookies

Wenn Sie die Cookies API verwenden möchten, müssen Sie die Berechtigung "cookies" in Ihrem Manifest zusammen mit Hostberechtigungen für alle Hosts deklarieren, auf deren Cookies Sie zugreifen möchten. Beispiel:

{
  "name": "My extension",
  ...
  "host_permissions": [
    "*://*.google.com/"
  ],
  "permissions": [
    "cookies"
  ],
  ...
}

Partitionierung

Mit partitionierten Cookies kann eine Website festlegen, dass bestimmte Cookies anhand des Ursprungs des Frames der obersten Ebene verschlüsselt werden sollen. Wenn Website A beispielsweise mithilfe eines iFrames in Website B und Website C eingebettet ist, können die eingebetteten Versionen eines partitionierten Cookies von A unterschiedliche Werte auf B und C haben.

Standardmäßig werden alle API-Methoden für nicht partitionierte Cookies ausgeführt. Mit der Property partitionKey kann dieses Verhalten überschrieben werden.

Weitere Informationen zu den allgemeinen Auswirkungen der Partitionierung für Erweiterungen finden Sie unter Speicher und Cookies.

Beispiele

Ein einfaches Beispiel für die Verwendung der Cookies API finden Sie im Verzeichnis examples/api/cookies. Weitere Beispiele und Hilfe beim Ansehen des Quellcodes finden Sie unter Beispiele.

Typen

Stellt Informationen zu einem HTTP-Cookie dar.

Attribute

CookieDetails

Details zur Identifizierung des Cookies.

Attribute

CookiePartitionKey

Stellt den Partitionierungsschlüssel eines partitionierten Cookies dar.

Attribute

CookieStore

Stellt einen Cookie-Speicher im Browser dar. Ein Inkognitofenster verwendet beispielsweise einen separaten Cookie-Speicher als ein normales Fenster.

Attribute

FrameDetails

Details zur Identifizierung des Frames.

Attribute

OnChangedCause

Der zugrunde liegende Grund für die Änderung des Cookies. Wenn ein Cookie über einen expliziten Aufruf von „chrome.cookies.remove“ eingefügt oder entfernt wurde, ist „cause“ „explicit“. Wenn ein Cookie aufgrund des Ablaufs automatisch entfernt wurde, ist „cause“ (Ursache) „expired“ (abgelaufen). Wenn ein Cookie entfernt wurde, weil es mit einem bereits abgelaufenen Ablaufdatum überschrieben wurde, wird „cause“ auf „expired_overwrite“ gesetzt. Wenn ein Cookie aufgrund der Garbage Collection automatisch entfernt wurde, ist „cause“ (Ursache) „evicted“ (entfernt). Wenn ein Cookie aufgrund eines „set“-Aufrufs, durch den es überschrieben wurde, automatisch entfernt wurde, ist „cause“ (Ursache) „overwrite“ (Überschreiben). Planen Sie Ihre Antwort entsprechend.

Enum

"evicted"

„expired“

„explicit“

"expired_overwrite"

"overwrite"

SameSiteStatus

Der „SameSite“-Status eines Cookies (https://tools.ietf.org/html/draft-west-first-party-cookies). „no_restriction“ entspricht einem Cookie, das mit „SameSite=None“ festgelegt wurde, „lax“ entspricht „SameSite=Lax“ und „strict“ entspricht „SameSite=Strict“. „unspecified“ entspricht einem Cookie, das ohne das SameSite-Attribut gesetzt wurde.

Enum

"no_restriction"

"lax"

"strict"

"unspecified"

Methoden

get()

chrome.cookies.get(
  details: CookieDetails,
): Promise<Cookie | undefined>

Ruft Informationen zu einem einzelnen Cookie ab. Wenn für die angegebene URL mehrere Cookies mit demselben Namen vorhanden sind, wird das Cookie mit dem längsten Pfad zurückgegeben. Bei Cookies mit derselben Pfadlänge wird das Cookie mit der frühesten Erstellungszeit zurückgegeben.

Parameter

Ausgabe

getAll()

chrome.cookies.getAll(
  details: object,
): Promise<Cookie[]>

Ruft alle Cookies aus einem einzelnen Cookie-Speicher ab, die den angegebenen Informationen entsprechen. Die zurückgegebenen Cookies werden sortiert, wobei die mit dem längsten Pfad zuerst aufgeführt werden. Wenn mehrere Cookies dieselbe Pfadlänge haben, werden diejenigen mit der frühesten Erstellungszeit zuerst aufgeführt. Mit dieser Methode werden nur Cookies für Domains abgerufen, für die die Erweiterung Hostberechtigungen hat.

Parameter

Ausgabe

getAllCookieStores()

chrome.cookies.getAllCookieStores(): Promise<CookieStore[]>

Alle vorhandenen Cookie-Speicher auflisten

Ausgabe

getPartitionKey()

chrome.cookies.getPartitionKey(
  details: FrameDetails,
): Promise

Der Partitionierungsschlüssel für den angegebenen Frame.

Parameter

Ausgabe

remove()

chrome.cookies.remove(
  details: CookieDetails,
): Promise<object | undefined>

Löscht ein Cookie nach Name.

Parameter

Ausgabe

set()

chrome.cookies.set(
  details: object,
): Promise<Cookie | undefined>

Setzt ein Cookie mit den angegebenen Cookie-Daten. Vorhandene entsprechende Cookies werden möglicherweise überschrieben.

Parameter

Ausgabe

Ereignisse

onChanged

chrome.cookies.onChanged.addListener(
  callback: function,
)

Wird ausgelöst, wenn ein Cookie gesetzt oder entfernt wird. Als Sonderfall ist zu beachten, dass die Aktualisierung der Eigenschaften eines Cookies in zwei Schritten erfolgt: Das zu aktualisierende Cookie wird zuerst vollständig entfernt, wodurch eine Benachrichtigung mit dem „cause“-Wert „overwrite“ generiert wird. Anschließend wird ein neues Cookie mit den aktualisierten Werten geschrieben, wodurch eine zweite Benachrichtigung mit dem „Grund“ „explizit“ generiert wird.

Parameter

Sofern nicht anders angegeben, sind die Inhalte dieser Seite unter der Creative Commons Attribution 4.0 License und Codebeispiele unter der Apache 2.0 License lizenziert. Weitere Informationen finden Sie in den Websiterichtlinien von Google Developers. Java ist eine eingetragene Marke von Oracle und/oder seinen Partnern.

Zuletzt aktualisiert: 2025-10-01 (UTC).