cookies.Cookie
该Cookie
类型的cookies
API表示有关HTTP cookie的信息。
类型
此类型的值为对象,可以包含以下属性
domain
-
一个
string
表示cookie所属的域(例如“www.google.com”,“example.com”)。 expirationDate
可选-
一个
number
表示cookie的过期日期,以自UNIX纪元以来的秒数表示。会话cookie不提供。 firstPartyDomain
-
一个
string
表示与cookie关联的第一方域。如果在关闭第一方隔离时设置了cookie,则此值将为空字符串。请参阅第一方隔离。 hostOnly
-
一个
boolean
,true
如果cookie是主机专用cookie(即请求的主机必须与cookie的域完全匹配),否则为false
。 httpOnly
-
一个
boolean
,true
如果cookie标记为HttpOnly(即cookie无法访问客户端脚本),否则为false
。 name
-
一个
string
表示cookie的名称。 partitionKey
可选-
一个
object
表示存储分区包含cookie的描述。如果cookie不在分区存储中,则省略此对象(null)。此对象包含以下属性topLevelSite
-
一个
string
表示cookie存储分区的顶级URL,如果cookie位于按顶级站点分区的存储中。
path
-
一个
string
表示cookie的路径。 secure
-
一个
boolean
,true
如果cookie标记为安全(即其范围限于安全通道,通常为HTTPS),否则为false
。 session
-
一个
boolean
,true
如果cookie是会话cookie,否则为false
如果它是具有过期日期的持久性cookie。 sameSite
-
一个
cookies.SameSiteStatus
值,指示cookie的SameSite状态。 storeId
-
一个
string
表示包含此cookie的cookie存储的ID,由cookies.getAllCookieStores()
提供。 value
-
一个
string
表示cookie的值。
浏览器兼容性
BCD 表仅在浏览器中加载
示例
cookies API 中的大多数方法都涉及使用Cookie
对象作为输入参数或作为返回值的一部分。例如,对cookies.getAll()
的调用返回一个Cookie
对象数组。
在下面的示例中,我们请求了所有cookie,然后记录了每个生成的Cookie
对象的一些值
function logCookies(cookies) {
for (cookie of cookies) {
console.log(`Domain: ${cookie.domain}`);
console.log(`Name: ${cookie.name}`);
console.log(`Value: ${cookie.value}`);
console.log(`Persistent: ${!cookie.session}`);
}
}
let gettingAll = browser.cookies.getAll({});
gettingAll.then(logCookies);
注意:此 API 基于 Chromium 的chrome.cookies
API。本文档源自 Chromium 代码中的cookies.json
。