refresh date: 2026-09-25 robots: noindex
說明
chrome.extension API 提供的公用程式可用於任何擴充功能頁面。包括支援擴充功能與其內容指令碼之間,或擴充功能之間的訊息交換,詳情請參閱「訊息傳遞」。
類型
ViewType
擴充功能檢視畫面的類型。
列舉
"tab"
"popup"
屬性
inIncognitoContext
如果內容指令碼在無痕分頁中執行,且擴充功能頁面在無痕程序中執行,則為 True。後者僅適用於 incognito_behavior 為「split」的擴充功能。
類型
布林值
lastError
請使用 runtime.lastError。
如果非同步擴充功能 API 導致錯誤,則在回呼的生命週期內設定。如果未發生錯誤,lastError 會是 undefined。
類型
物件
屬性
-
訊息
字串
發生錯誤的說明。
方法
getBackgroundPage()
chrome.extension.getBackgroundPage(): Window | undefined
傳回目前擴充功能中執行的背景網頁 JavaScript「window」物件。如果擴充功能沒有背景頁面,則傳回空值。
傳回
-
視窗 | undefined
getExtensionTabs()
chrome.extension.getExtensionTabs(
windowId?: number,
): Window[]
請使用 extension.getViews {type: "tab"}。
傳回 JavaScript「window」物件的陣列,其中包含目前擴充功能中執行的每個分頁。如果指定 windowId,則只會傳回附加至指定視窗的分頁「視窗」物件。
參數
-
windowId
數字 選填
傳回
-
Window[]
全域視窗物件陣列
getURL()
chrome.extension.getURL(
path: string,
): string
請使用 runtime.getURL。
將擴充功能安裝目錄中的相對路徑轉換為完整網址。
參數
-
路徑
字串
擴充功能中資源的路徑,相對於其安裝目錄。
傳回
-
字串
資源的完整網址。
getViews()
chrome.extension.getViews(
fetchProperties?: object,
): Window[]
針對目前擴充功能中執行的每個頁面,傳回 JavaScript「window」物件的陣列。
參數
-
fetchProperties
物件 選填
-
tabId
數字 選填
Chrome 54 以上版本根據分頁 ID 尋找檢視畫面。如果省略這個欄位,系統會傳回所有檢視表。
-
類型
ViewType 選填
要取得的檢視畫面類型。如果省略,則會傳回所有檢視畫面 (包括背景頁面和分頁)。
-
windowId
數字 選填
要限制搜尋範圍的視窗。如果省略,則會傳回所有檢視畫面。
-
傳回
-
Window[]
全域物件陣列
isAllowedFileSchemeAccess()
chrome.extension.isAllowedFileSchemeAccess(
callback?: function,
): Promise<boolean>
擷取擴充功能存取「file://」配置的狀態。這項設定對應到使用者控制的個別擴充功能「允許存取檔案網址」設定,可透過 chrome://extensions 頁面存取。
參數
-
callback
函式 選填
callback參數如下:(isAllowedAccess: boolean) => void
-
isAllowedAccess
布林值
如果擴充功能可以存取「file://」配置,則為 True,否則為 False。
-
傳回
-
Promise<boolean>
Chrome 99 以上版本Promise 僅適用於 Manifest V3 以上版本,其他平台則須使用回呼。
isAllowedIncognitoAccess()
chrome.extension.isAllowedIncognitoAccess(
callback?: function,
): Promise<boolean>
擷取擴充功能存取無痕模式的狀態。這項設定對應到使用者控制的個別擴充功能「允許在無痕模式中執行」設定,可透過 chrome://extensions 頁面存取。
參數
-
callback
函式 選填
callback參數如下:(isAllowedAccess: boolean) => void
-
isAllowedAccess
布林值
如果擴充功能可存取無痕模式,則為 True,否則為 False。
-
傳回
-
Promise<boolean>
Chrome 99 以上版本Promise 僅適用於 Manifest V3 以上版本,其他平台則須使用回呼。
sendRequest()
chrome.extension.sendRequest(
extensionId?: string,
request: any,
callback?: function,
): Promise<any>
請使用 runtime.sendMessage。
向擴充功能中的其他事件監聽器傳送單一要求。與 runtime.connect 類似,但只會傳送單一要求,並可選擇是否傳送回應。extension.onRequest 事件會在擴充功能的每個頁面中觸發。
參數
-
extensionId
字串 選填
要連結的擴充功能 ID。如果省略,預設值為您自己的分機號碼。
-
申請。
任何
-
callback
函式 選填
Chrome 99 以上版本callback參數如下:(response: any) => void
-
回應
任何
要求處理常式傳送的 JSON 回應物件。如果連線至擴充功能時發生錯誤,系統會拒絕 Promise。
-
傳回
-
Promise<any>
Chrome 99 以上版本Promise 僅適用於 Manifest V3 以上版本,其他平台則須使用回呼。
setUpdateUrlData()
chrome.extension.setUpdateUrlData(
data: string,
): void
設定擴充功能更新網址中使用的 ap CGI 參數值。如果擴充功能是由 Chrome 擴充功能庫代管,系統會忽略這個值。
參數
-
資料
字串
事件
onRequest
chrome.extension.onRequest.addListener(
callback: function,
)
請使用 runtime.onMessage。
當要求從擴充功能程序或內容指令碼傳送時,就會觸發。
參數
-
callback
函式
callback參數如下:(request: any, sender: runtime.MessageSender, sendResponse: function) => void
-
申請。
任何
-
sender
-
sendResponse
函式
sendResponse參數如下:() => void
-
onRequestExternal
chrome.extension.onRequestExternal.addListener(
callback: function,
)
請使用 runtime.onMessageExternal。
從其他擴充功能傳送要求時觸發。
參數
-
callback
函式
callback參數如下:(request: any, sender: runtime.MessageSender, sendResponse: function) => void
-
申請。
任何
-
sender
-
sendResponse
函式
sendResponse參數如下:() => void
-