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

浏览器兼容性