跳至主要內容
版本: 23.11.1

BrowserContext 類別

BrowserContext 代表 瀏覽器 內的個別使用者情境。

瀏覽器 啟動時,它至少會有一個預設的 瀏覽器情境。其他可以使用 Browser.createBrowserContext() 建立。每個情境都有隔離的儲存空間(cookies/localStorage/等等)。

BrowserContext 發射 各種事件,這些事件記錄在 BrowserContextEvent 列舉中。

如果 頁面 開啟另一個 頁面,例如使用 window.open,則彈出視窗將屬於父 頁面的瀏覽器情境

簽名

export declare abstract class BrowserContext extends EventEmitter<BrowserContextEvents>

擴展: EventEmitter<BrowserContextEvents>

備註

在 Chrome 中,所有非預設的情境都是無痕模式,如果您在啟動瀏覽器時提供 --incognito 參數,則 預設瀏覽器情境 可能會是無痕模式。

此類別的建構函式標記為內部使用。第三方程式碼不應直接呼叫建構函式,或建立擴展 BrowserContext 類別的子類別。

範例

建立新的 瀏覽器情境

// Create a new browser context
const context = await browser.createBrowserContext();
// Create a new page inside context.
const page = await context.newPage();
// ... do stuff with page ...
await page.goto('https://example.com');
// Dispose context once it's no longer needed.
await context.close();

屬性

屬性

修飾詞

類型

描述

closed

唯讀

boolean

瀏覽器情境 是否已關閉。

id

唯讀

string | undefined

瀏覽器情境 的識別碼。

方法

方法

修飾詞

描述

browser()

取得與此 瀏覽器情境 相關聯的 瀏覽器

clearPermissionOverrides()

清除此 瀏覽器情境 的所有權限覆寫。

close()

關閉此 瀏覽器情境 和所有相關聯的 頁面

備註

預設瀏覽器情境 無法關閉。

cookies()

取得瀏覽器情境中的所有 cookies。

deleteCookie(cookies)

移除瀏覽器情境中的 cookie

newPage()

在此 瀏覽器情境 中建立新的 頁面

overridePermissions(origin, permissions)

授予此 瀏覽器情境 在指定的 origin 內指定的 permissions

pages()

取得此 瀏覽器情境 內所有開啟的 頁面 的清單。

備註

非可見的 頁面,例如 "background_page",不會在此處列出。您可以使用 Target.page() 找到它們。

setCookie(cookies)

在瀏覽器情境中設定 cookie。

targets()

取得此 瀏覽器情境 內所有作用中的 目標

waitForTarget(predicate, options)

等待直到出現符合指定 predicate目標 並傳回它。

這將會尋找所有開啟的 瀏覽器情境