cookies.getAll()
getAll() 方法是 cookies API 的一部分,用于检索与所提供详细信息匹配的所有 cookie。
要使用此方法,扩展程序必须具有 "cookies" 权限和相关的宿主权限。有关更多详细信息,请参阅 cookie 权限。
这是一个异步函数,返回一个 Promise。
语法
let getting = browser.cookies.getAll(
  details                // object
)
参数
- details
- 
一个包含用于匹配要检索的 cookie 的详细信息的 object。包含的属性如下(有关这些属性的更多信息,请参阅 Cookie 类型)- domain可选
- 
一个 string,表示 cookie 必须关联的域名(它们可以与此确切域名或其子域名关联)。
- firstPartyDomain可选
- 
一个 string,表示要检索的 cookie 所关联的同级域名。如果浏览器启用了同级隔离,则必须提供此属性。如果传递 null,则结果中将包含firstPartyDomain具有任何值以及未设置firstPartyDomain的 cookie。请参阅 同级隔离。
- name可选
- 
一个 string,表示 cookie 必须具有的名称。
- partitionKey可选
- 
一个 object,定义要从中返回 cookie 的 存储分区- 如果省略,则仅返回来自未分区存储的 cookie。
- 如果包含但未指定 topLevelSite,则返回来自分区和未分区存储的所有 cookie。
- 如果包含并指定了 topLevelSite,则返回来自指定分区存储的 cookie。
 此对象包含 - topLevelSite可选
- 
一个 string,表示包含 cookie 的顶级站点存储分区的同级 URL。
 
- path可选
- 
一个 string,表示路径 — cookie 的路径必须与此路径相同。
- secure可选
- 
一个 boolean— 按secure属性过滤 cookie,允许您过滤安全或不安全 cookie。
- session可选
- 
一个 boolean— 按session属性过滤 cookie,允许您过滤会话 cookie 或持久 cookie。
- storeId可选
- 
一个 string,表示要从中检索 cookie 的 cookie 存储区。如果省略,则使用当前执行上下文的 cookie 存储区。
- url可选
- 
一个 string,表示要检索的 cookie 必须关联的 URL。
 
返回值
一个 Promise,该 Promise 将以一个 cookies.Cookie 对象数组的形式兑现,这些对象匹配 details 参数中给出的属性。仅返回未过期的 cookie。返回的 cookie 按路径长度排序,从长到短。如果多个 cookie 具有相同的路径长度,则最先创建的 cookie 排在前面。
注意: 在 Firefox 133 之前,Firefox 按创建时间排序返回 cookie,最早创建的排在前面。
示例
此示例获取浏览器存储的所有名为“favorite-color”的 cookie。当结果返回时,代码会将每个结果的值打印到控制台。
function logCookies(cookies) {
  for (const cookie of cookies) {
    console.log(cookie.value);
  }
}
browser.cookies
  .getAll({
    name: "favorite-color",
  })
  .then(logCookies);
扩展程序示例
浏览器兼容性
加载中…
注意: 此 API 基于 Chromium 的 chrome.cookies API。本文档源自 Chromium 代码中的 cookies.json。