declarativeNetRequest.updateDynamicRules

修改扩展的一组动态规则。首先删除在 options.removeRuleIds 中列出的规则,然后添加 options.addRules 中给出的规则。请注意:

  • 此更新作为原子操作进行:要么所有指定的规则都添加和删除,要么返回错误。
  • 这些规则会跨浏览器会话和扩展更新进行持久化。
  • 不能使用此函数删除作为扩展包的一部分指定的静态规则。
  • declarativeNetRequest.MAX_NUMBER_OF_DYNAMIC_AND_SESSION_RULES 是扩展可以添加的动态和会话规则的最大数量。

语法

js
let updatedRules = browser.declarativeNetRequest.updateDynamicRules(
    options                // 对象
);

参数

options

包含要从动态规则中添加或删除的规则详细信息的对象。

addRules 可选

一个 declarativeNetRequest.Rule 数组。要添加的规则的详细信息。

removeRuleIds 可选

一个 number 数组。要移除的规则的 ID。任何无效的 ID 都将被忽略。

返回值

一个 Promise。如果请求成功,其会被兑现且不带参数。如果请求失败,则 promise 将被拒绝并带有错误消息。

示例

示例扩展

浏览器兼容性

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Firefox for Android
Safari on iOS
updateDynamicRules

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support