CookieChangeEvent

基準線 2025
新推出

自 2025 年 6 月起,此功能已在最新的裝置和瀏覽器版本中可用。此功能可能不適用於舊裝置或瀏覽器。

安全上下文: 此功能僅在安全上下文(HTTPS)中可用,且支援此功能的瀏覽器數量有限。

CookieChangeEvent 介面是 Cookie Store API 的事件型別,當在 CookieStore 上建立或刪除了任何 cookie 時,會觸發 change 事件。

注意: 由於插入了具有相同名稱、域和路徑的另一個 cookie 而被替換的 cookie 將被忽略,不會觸發更改事件。

Event CookieChangeEvent

建構函式

CookieChangeEvent()

建立一個新的 CookieChangeEvent

例項屬性

此介面還繼承了 Event 的屬性。

CookieChangeEvent.changed 只讀

一個列出所有新建立的 cookie 的陣列。請注意,這不包括已設定了過期時間(在過去)的 cookie,因為這些 cookie 會立即被刪除。

CookieChangeEvent.deleted 只讀

一個列出所有被刪除的 cookie 的陣列,無論是由於過期還是因為被顯式刪除。請注意,這包括了那些建立時過期時間在過去的 cookie。

例項方法

此介面還繼承了 Event 的方法。

示例

在此示例中,當設定 cookie 時,事件監聽器會將事件記錄到控制檯。這是一個 CookieChangeEvent 物件,其 changed 屬性包含一個代表剛剛設定的 cookie 的物件。

js
cookieStore.addEventListener("change", (event) => {
  console.log(event);
});

const one_day = 24 * 60 * 60 * 1000;
cookieStore.set({
  name: "cookie1",
  value: "cookie1-value",
  expires: Date.now() + one_day,
  domain: "example.com",
});

規範

規範
Cookie Store API
# CookieChangeEvent

瀏覽器相容性