Microsoft Edge 扩展支持的 API
Microsoft Edge 扩展将 JavaScript 方法的子集用于 Chromium 浏览器引擎平台。 为 Microsoft Edge 浏览器生成扩展时,可以使用以下 API。
API | 说明 | 清单版本 |
---|---|---|
accessibilityFeatures | 管理浏览器的辅助功能。 | MV2、MV3 |
action | 控制浏览器工具栏中的扩展图标。 | MV3 |
alarms | 计划定期运行代码或在将来的指定时间运行代码。 | MV2、MV3 |
bookmarks | 创建、组织和操作书签。 | MV2、MV3 |
browserAction | 使用浏览器操作将图标放置在 Microsoft Edge 中的工具栏上。 还可以使用浏览器操作来添加工具提示、徽章或弹出窗口。 | MV2 |
browsingData | 从用户的本地配置文件中移除浏览数据。 | MV2、MV3 |
commands | 添加可触发扩展中的操作的键盘快捷方式,例如打开浏览器或向扩展发送命令的操作。 | MV2、MV3 |
contentSettings | 自定义 Microsoft Edge 在每个网站上的行为,而不是全局行为。 更改用于控制网站是否可以使用 Cookie、JavaScript 和插件等功能的设置。 | MV2、MV3 |
contextMenus | 向 Microsoft Edge 的上下文菜单(右键单击菜单)中添加项。 菜单项可以应用于不同的对象,例如图像、超链接和页面。 | MV2、MV3 |
cookies | 查询和修改 Cookie,并在 Cookie 更改时收到通知。 | MV2、MV3 |
debugger | 附加到一个或多个选项卡,以检测网络交互、调试 JavaScript、更改 DOM、更改 CSS 等。 使用调试对象的 tabId 将带有 sendCommand 的选项卡作为目标,并通过 tabId 从 onEvent 回调中路由事件。 |
MV2、MV3 |
declarativeContent | 根据页面内容执行操作,无需读取页面内容的权限。 | MV2、MV3 |
declarativeNetRequest | 通过指定声明性规则来阻止或修改网络请求,从而提供更多隐私保护。 允许扩展修改网络请求,而无需拦截请求和查看内容。 | MV2、MV3 |
desktopCapture | 捕获屏幕、单个窗口或选项卡的内容。 | MV2、MV3 |
devtools.inspectedWindow | 与已检查的窗口交互。 例如,获取页面的选项卡 ID、评估代码、刷新页面或获取页面上的资源。 | MV2、MV3 |
devtools.network | 检索 DevTools“网络”工具显示的网络请求的相关信息。 | MV2、MV3 |
devtools.panels | 通过创建自己的面板、访问现有面板或添加边栏,将扩展集成到“开发人员工具”窗口 UI 中。 | MV2、MV3 |
dns | 解析 DNS 地址。 | MV2、MV3。 开发人员频道。 |
dom | 访问扩展的特殊 DOM API。 | MV2、MV3 |
downloads | 以编程方式启动、监视、操作和搜索下载。 | MV2、MV3 |
enterprise.hardwarePlatform | 获取运行浏览器的硬件平台制造商和型号。 适用于通过企业策略安装的扩展。 | MV2、MV3 |
events | API 使用的常用类型,在发生相关事件时引发事件以向你发出通知。 | MV2、MV3 |
extension | 可由任何扩展页使用的实用工具。 包括支持在扩展与其内容脚本之间或在扩展之间交换消息。 | MV2、MV3 |
extensionTypes | Microsoft Edge 扩展的类型声明。 | MV2、MV3 |
fontSettings | 管理 Microsoft Edge 中的字体设置。 | MV2、MV3 |
history | 与浏览器的访问页面记录交互。 可以在浏览器历史记录中添加、移除或查询 URL。 要使用自己的版本替代历史记录页,请导航到“替代页面”。 | MV2、MV3 |
i18n | 在整个应用或扩展中实现国际化。 | MV2、MV3 |
identity | 获取 OAuth2 访问令牌。 不支持:identity.getAccounts、identity.getAuthToken - 作为替代方法,可以使用 identity.launchWebAuthFlow 提取 OAuth2 令牌来对用户进行身份验证。 | MV2、MV3 |
idle | 检测计算机的空闲状态更改时间。 | MV2、MV3 |
input.ime | 为 OS 实现自定义 IME,允许扩展处理击键、设置组合和管理候选窗口。 | MV2、MV3 |
management | 管理已安装或正在运行的扩展列表。 可以替代内置的“新建选项卡”页。 | MV2、MV3 |
notifications | 使用模板创建丰富的通知,并将其显示在系统托盘中。 | MV2、MV3 |
offscreen | 创建和管理屏幕外文档。 | MV3 |
omnibox | 在 Microsoft Edge 地址栏(也称为 Omnibox)中注册关键字。 | MV2、MV3 |
pageAction | 将图标添加到地址栏右侧的 Microsoft Edge 工具栏。 页面操作是可在当前页面上执行的操作,并非适用于所有页面。 页面操作在处于非活动状态时灰显。 | MV2 |
pageCapture | 将选项卡另存为 MHTML 文件。 | MV2、MV3 |
权限 | 在运行时而不是安装时检索声明的可选权限。 可以使用此 API 向用户显示所需权限和已批准的权限。 | MV2、MV3 |
power | 替代系统的电源管理功能。 | MV2、MV3 |
printerProvider | 使用事件来查询打印机及其功能,并提交打印作业。 | MV2、MV3 |
privacy | 控制 Microsoft Edge 中影响用户隐私的功能。 此 API 依赖于 types 的 EdgeSetting 原型来获取和设置 Microsoft Edge 的配置。 |
MV2、MV3 |
processes | 与浏览器的进程交互。 | MV2、MV3。 开发人员频道。 |
proxy | 管理 Microsoft Edge 的代理设置。 此 API 依赖于 types API 的 EdgeSetting 原型来获取和设置 Microsoft Edge 的代理配置。 |
MV2、MV3 |
runtime | 检索背景,返回有关清单的详细信息,并侦听和响应应用或扩展生命周期中的事件。 还可以将 URL 的相对路径转换为完全限定的 URL。 | MV2、MV3 |
scripting | 在不同的上下文中执行脚本。 | MV3 |
search | 使用默认提供程序进行搜索。 | MV2、MV3 |
sessions | 从浏览会话查询和还原选项卡和窗口。 | MV2、MV3 |
sidePanel | 将自定义内容与网页的主要内容一起托管在浏览器的边栏中。 请参阅 开发Microsoft Edge 边栏的扩展。 | MV3 |
storage | 存储、检索和跟踪对用户数据的更改。 | MV2、MV3 |
system.cpu | 查询 CPU 元数据。 | MV2、MV3 |
system.display | 查询显示元数据。 | MV2、MV3 |
system.memory | 报告可用内存容量和总物理内存容量。 | MV2、MV3 |
system.storage | 查询有关存储设备的信息。 还可以在附加或分离存储设备时收到通知。 | MV2、MV3 |
tabCapture | 与选项卡媒体流交互。 | MV2、MV3 |
tabGroups | 与浏览器的选项卡分组系统交互。 在浏览器中修改和重新排列选项卡组。 要对选项卡进行分组和取消分组,或者要查询组中包含的选项卡,请改用选项卡 API。 | MV3 |
tabs | 与浏览器的选项卡系统交互,以创建、修改和重新排列选项卡。 | MV2、MV3 |
topSites | 访问新建选项卡页上显示的热门网站,也称为访问次数最多的网站。 这些网站不包括用户自定义的快捷方式。 | MV2、MV3 |
tts | 播放合成的文本到语音转换 (TTS)。 | MV2、MV3 |
ttsEngine | 使用扩展实现文本到语音转换 (TTS) 引擎。 注册使用此 API 的扩展会收到包含要说出的语句和其他参数的事件。 然后,扩展可以使用任何可用的 Web 技术来合成和输出语音,并将事件发送回调用函数以报告状态。 | MV2、MV3 |
types | Microsoft Edge 的类型声明。 | MV2、MV3 |
userScripts | 在用户脚本上下文中执行用户脚本。 | MV3 |
webAuthenticationProxy | 允许在远程主机上运行的远程桌面软件拦截 Web 身份验证 API (WebAuthn) 请求,以便在本地客户端上处理这些请求。 | MV3 |
webNavigation | 接收有关导航请求状态的通知。 | MV2、MV3 |
webRequest | 观察和分析流量。 拦截、阻止或修改请求。 | MV2、MV3 |
windows | 与浏览器窗口交互,在浏览器中创建、修改和重新排列窗口。 | MV2、MV3 |
不支持的 API
Microsoft Edge 不支持这些扩展 API。
API | 注释 |
---|---|
音频 | 仅限 ChromeOS。 |
certificateProvider | 仅限 ChromeOS。 |
devtools.recorder | 仅限 Chrome DevTools。 |
documentScan | 仅限 ChromeOS。 |
enterprise.deviceAttributes | 仅限 ChromeOS。 |
enterprise.networkingAttributes | 仅限 ChromeOS。 |
enterprise.platformKeys | 仅限 ChromeOS。 |
fileBrowserHandler | 仅限 ChromeOS。 |
fileSystemProvider | 仅限 ChromeOS。 |
gcm | |
identity.getAccounts | |
identity.getAuthToken | 使用在 manifest.json 的 oauth2 部分中指定的客户端 ID 和作用域获取 OAuth2 访问令牌。 作为替代方法,可以使用 identity.launchWebAuthFlow 提取 OAuth2 令牌来对用户进行身份验证。 |
instanceID | |
loginState | 仅限 ChromeOS。 |
platformKeys | 仅限 ChromeOS。 |
printing | 仅限 ChromeOS。 |
printingMetrics | 仅限 ChromeOS。 |
readingList | |
vpnProvider | 仅限 ChromeOS。 |
wallpaper | 仅限 ChromeOS。 |
有关支持的 API 的其他注意事项
用户必须使用 Microsoft 帐户 (MSA) 或 Microsoft Entra ID 帐户登录 Microsoft Edge 才能使用
chrome.identity.getProfileUserInfo
。 如果用户使用本地 Microsoft Entra ID 帐户登录 Microsoft Edge,则 API 返回null
作为电子邮件和 ID 值。Microsoft 帐户 (MSA) 是 Outlook.com、Live.com 或 Hotmail.com 帐户。
Microsoft Edge 不支持使用 Chrome Web Store 付款的扩展,因为它使用
identity.getAuthtoken
为已登录用户请求令牌。 这些令牌发送到基于 REST 的许可 API。
注意
此页面的某些部分是根据 Google 创建和共享的作品所做的修改,并根据 Creative Commons Attribution 4.0 International License 中描述的条款使用。 原始页面位于此处。
本作品根据 Creative Commons Attribution 4.0 International License 获得许可。
另请参阅
- 适用于清单 V2 的 Chrome 扩展 API 参考
- 适用于清单 V3 的 Chrome 扩展 API 参考
- 使用 REST API 更新 Microsoft Edge 加载项 - 在 Microsoft Edge 加载项网站上更新扩展。