CookieChangeEvent: 已更改属性

安全上下文:此功能仅在安全上下文(HTTPS)中可用,在某些或所有支持的浏览器中可用。

changedCookieChangeEvent 接口的只读属性,它返回已更改的 cookie 数组。

请注意,这将排除使用过去过期日期创建的 cookie,因为这些 cookie 会立即删除。

包含已更改 cookie 的对象数组。每个对象包含以下属性

名称

包含 cookie 名称的字符串。

包含 cookie 值的字符串。

域名

包含 cookie 域名的字符串。

路径

包含 cookie 路径的字符串。

到期时间

时间戳,以毫秒为单位的 Unix 时间,包含 cookie 的过期日期。

安全

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

sameSite

以下 SameSite 值之一

"严格"

Cookie 仅在第一方上下文中发送,不会与第三方网站发起的请求一起发送。

"宽松"

Cookie 不会在普通的跨站点子请求中发送(例如,将图像或框架加载到第三方网站),但会在用户在源站点内导航时发送(例如,当用户点击链接时)。

"无"

Cookie 将在所有上下文中发送。

分区

一个布尔值,指示 cookie 是否为分区 cookie (true) 或不是 (false)。有关更多信息,请参阅具有独立分区状态的 Cookie (CHIPS)

示例

在这个例子中,当设置 cookie 时,事件监听器将 changed 属性记录到控制台。数组中的第一个项目包含一个表示刚刚设置的 cookie 的对象。

js
cookieStore.addEventListener("change", (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-cookiechangeevent-changed

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。