说明
chrome.extension
API 具有可供任何扩展程序页面使用的实用程序。它还支持在扩展程序与其内容脚本之间或扩展程序之间交换消息(详见消息传递)。
类型
ViewType
附加信息视图的类型。
枚举
"popup"
属性
inIncognitoContext
对于在无痕模式标签页中运行的内容脚本,以及在无痕模式下运行的扩展程序页面,结果为 true。后者仅适用于具有“split”adult_behavior 的扩展程序。
类型
boolean
lastError
请使用 runtime.lastError
。
如果异步扩展程序 API 导致错误,则设置回调的生命周期。如果没有发生任何错误,lastError 将为 undefined
。
类型
对象
属性
-
消息
string
对已发生的错误的说明。
方法
getBackgroundPage()
chrome.extension.getBackgroundPage()
返回当前扩展程序内运行的后台网页的 JavaScript“window”对象。如果扩展程序没有后台页面,则返回 null。
返回
-
窗口 | 未定义
getExtensionTabs()
chrome.extension.getExtensionTabs(
windowId?: number,
)
请使用 extension.getViews
{type: "tab"}
。
针对当前扩展程序中运行的每个标签页,返回由 JavaScript“window”对象的数组。如果指定了 windowId
,系统将仅返回附加到指定窗口的标签页的“window”对象。
参数
-
windowId
数字可选
返回
-
窗口 []
全局窗口对象的数组
getURL()
chrome.extension.getURL(
path: string,
)
请使用 runtime.getURL
。
将扩展程序安装目录中的相对路径转换为完全限定网址。
参数
-
path
string
扩展程序中某个资源的路径,以相对于其安装目录表示。
返回
-
string
资源的完全限定网址。
getViews()
chrome.extension.getViews(
fetchProperties?: object,
)
针对当前扩展程序中运行的每个网页返回 JavaScript“window”对象的数组。
参数
-
fetchProperties
对象(可选)
-
tabId
数字可选
Chrome 54 及更高版本根据标签页 ID 查找视图。如果省略此字段,则返回所有视图。
-
类型
ViewType(可选)
要获取的视图类型。如果省略,则返回所有视图(包括后台网页和标签页)。
-
windowId
数字可选
限制搜索到的窗口。如果省略,则返回所有视图。
-
返回
-
窗口 []
全局对象的数组
isAllowedFileSchemeAccess()
chrome.extension.isAllowedFileSchemeAccess(
callback?: function,
)
检索扩展程序对“file://”架构的访问权限状态。这对应于用户控制的每个扩展程序的“允许访问文件网址”设置(可通过 chrome://extensions 页面访问)。
参数
-
callback
函数(可选)
callback
参数如下所示:(isAllowedAccess: boolean) => void
-
isAllowedAccess
boolean
如果扩展程序可以访问“file://”架构,则为 true,否则为 false。
-
返回
-
Promise<boolean>
Chrome 99 及更高版本Manifest V3 及更高版本支持 promise,但提供回调以实现向后兼容性。您不能在同一个函数调用中同时使用这两者。promise 使用传递给回调函数的同一类型进行解析。
isAllowedIncognitoAccess()
chrome.extension.isAllowedIncognitoAccess(
callback?: function,
)
检索扩展程序对无痕模式的访问状态。这对应于用户控制的每个扩展程序的“在无痕模式下启用”设置(可通过 chrome://extensions 页面访问)。
参数
-
callback
函数(可选)
callback
参数如下所示:(isAllowedAccess: boolean) => void
-
isAllowedAccess
boolean
如果扩展程序可以访问无痕模式,则返回 true,否则返回 false。
-
返回
-
Promise<boolean>
Chrome 99 及更高版本Manifest V3 及更高版本支持 promise,但提供回调以实现向后兼容性。您不能在同一个函数调用中同时使用这两者。promise 使用传递给回调函数的同一类型进行解析。
sendRequest()
chrome.extension.sendRequest(
extensionId?: string,
request: any,
callback?: function,
)
请使用 runtime.sendMessage
。
向扩展程序中的其他监听器发送单个请求。与 runtime.connect
类似,但仅发送一个带有可选响应的请求。该扩展程序的每个页面中都会触发 extension.onRequest
事件。
参数
-
extensionId
字符串(可选)
您要连接的扩展程序的 ID。如果省略,则默认使用您自己的扩展程序。
-
request
任意
-
callback
函数(可选)
Chrome 99 及更高版本callback
参数如下所示:(response: any) => void
-
条回复
任意
请求的处理程序发送的 JSON 响应对象。如果在连接到扩展程序时出错,系统将在不使用任何参数的情况下调用该回调函数,并将
runtime.lastError
设为错误消息。
-
返回
-
承诺<any>
Chrome 99 及更高版本Manifest V3 及更高版本支持 promise,但提供回调以实现向后兼容性。您不能在同一个函数调用中同时使用这两者。promise 使用传递给回调函数的同一类型进行解析。
setUpdateUrlData()
chrome.extension.setUpdateUrlData(
data: string,
)
设置扩展程序更新网址中使用的 ap CGI 参数的值。对于 Chrome 扩展程序库中托管的扩展程序,系统会忽略此值。
参数
-
data
string
活动
onRequest
chrome.extension.onRequest.addListener(
callback: function,
)
请使用 runtime.onMessage
。
从扩展程序进程或内容脚本发送请求时触发。
参数
-
callback
功能
callback
参数如下所示:(request: any, sender: runtime.MessageSender, sendResponse: function) => void
-
request
任意
-
sendResponse
功能
sendResponse
参数如下所示:() => void
-
onRequestExternal
chrome.extension.onRequestExternal.addListener(
callback: function,
)
请使用 runtime.onMessageExternal
。
从其他扩展程序发送请求时触发。
参数
-
callback
功能
callback
参数如下所示:(request: any, sender: runtime.MessageSender, sendResponse: function) => void
-
request
任意
-
sendResponse
功能
sendResponse
参数如下所示:() => void
-