CookieStore

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

安全上下文: 此项功能仅在一些支持的浏览器安全上下文(HTTPS)中可用。

备注: 此特性在 Web Worker 中可用。

Cookie Store APICookieStore 接口提供了在页面或 Service Worker 中异步设置和获取 cookies 的方法

CookieStore 通过 WindowServiceWorkerGlobalScope 上下文的全局范围内的属性进行访问。因此,不存在构造函数。

EventTarget CookieStore

实例方法

CookieStore.delete()

delete() 方法通过 nameoptions 对象删除 cookie,返回一个删除完成后兑现的 Promise

CookieStore.get()

get() 方法获通过 nameoptions 对象获取一个 cookie,返回一个兑现为 cookie 详细信息的 Promise

CookieStore.getAll()

getAll() 方法获取所有匹配的 cookie,返回一个兑现为 cookie 列表的 Promise

CookieStore.set()

set() 方法通过给定的 namevalueoptions 对象设置 cookie,返回一个设置成功后兑现的 Promise

事件

change

当 cookie 发生任何变更将触发 change 事件。

示例

在此示例中,我们设置了一个 cookie,并将其写入控制台以了解该操作是成功还是失败。

js
const day = 24 * 60 * 60 * 1000;

cookieStore
  .set({
    name: "cookie1",
    value: "cookie1-value",
    expires: Date.now() + day,
    domain: "example.com",
  })
  .then(
    () => {
      console.log("成功了!");
    },
    (reason) => {
      console.error("设置失败:", reason);
    },
  );

规范

Specification
Cookie Store API
# CookieStore

浏览器兼容性

BCD tables only load in the browser