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。