ExtendableCookieChangeEvent: changed 屬性

基線 2025 *
新推出

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

* 此特性的某些部分可能存在不同級別的支援。

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

注意:此功能僅在 Service Workers 中可用。

changedExtendableCookieChangeEvent 介面的一個只讀屬性,它返回給定 ExtendableCookieChangeEvent 例項所更改的所有 cookie。

一個包含已更改 cookie 的物件陣列。每個物件包含以下屬性

name

包含 cookie 名稱的字串。

value

包含 cookie 值的字串。

包含 cookie 域名的字串。

路徑

包含 cookie 路徑的字串。

expires

一個時間戳,以 Unix 時間(毫秒)給出,包含 cookie 的過期日期。

secure

一個 boolean 值,指示 cookie 是否僅在安全上下文中(HTTPS 而不是 HTTP)使用。

sameSite

以下 SameSite 值之一:

"strict"

Cookie 將僅在第一方上下文中傳送,而不會與第三方網站發起的請求一起傳送。

"lax"

Cookie 不會在正常的跨站子請求中傳送(例如,在第三方網站中載入圖片或框架),但在使用者在源站內導航時(例如,在點選連結時)會發送。

"none"

Cookie 將在所有上下文中傳送。

partitioned

一個布林值,指示 cookie 是否為分割槽 cookie(true)或不是(false)。有關更多資訊,請參閱 具有獨立分割槽狀態的 Cookie (CHIPS)

示例

在此示例中,當設定 cookie 時,事件監聽器會將 changed 屬性記錄到控制檯。陣列中的第一個元素包含一個表示剛設定的 cookie 的物件。

js
self.addEventListener("cookiechange", (event) => {
  console.log(event.changed[0]);
});

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
# dom-extendablecookiechangeevent-changed

瀏覽器相容性