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 将被拒绝并带有错误消息。

示例

示例扩展

浏览器兼容性

BCD tables only load in the browser