Cookie Store API - 提供了一个异步 API,用于管理 Cookie

安全上下文
该功能仅在部分或所有支持的浏览器中的安全上下文(HTTPS)中可用。

Cookie Store API(Cookie 存储 API)提供了一个异步 API,用于管理 Cookie,同时还将 Cookie 暴露给 Service Worker

概念和用法

获取和设置 Cookie 的现有方法涉及将 document.cookie 作为键 / 值对的字符串进行处理。除了繁琐且容易出错之外,在现代 Web 开发的背景下,它还存在许多问题。

document.cookie 接口是 同步,是单线程的,并且是阻塞的。写入 cookie 时,必须等待浏览器更新所有 cookie 的字符串。另外,对 document 的依赖意味着无法访问 document 对象的服务工作线程无法访问 cookie。

Cookie Store API 提供了一种更新的 cookie 管理方法。它是 异步 并且基于承诺,因此不会阻塞事件循环。它不依赖 document,因此对服务工作线程可用。获取和设置 cookie 的方法还通过错误消息提供了更多反馈。这意味着 Web 开发人员不必在设置后,立即回读 cookie 以检查设置是否成功。

接口

CookieStore

CookieStore 接口允许获取和设置 Cookie。

CookieStoreManager

CookieStoreManager 接口提供了服务工作线程注册,以使服务工作线程能够订阅 cookie 更改事件。

事件

CookieChangeEvent

当发生脚本可见的 cookie 更改时,将在 Window 上下文中对 CookieStore 对象调度的事件。

ExtendableCookieChangeEvent

当有任何脚本可见的 cookie 发生变化,并与服务工作线程的 cookie 变化订阅列表相匹配时,就会针对 ServiceWorkerGlobalScope 事件派发一个 ExtendableCookieChangeEvent

规范

规范 状态 备注
Unknown Unknown 初始定义。

桌面浏览器兼容性

暂无兼容数据