如何使用 declarativeNetRequest 动态规则附加到 requestHeaders

How to append to requestHeaders using declarativeNetRequest dynamic rules

在 Chrome 扩展中,我试图创建一个动态规则,通过 declarativeNetRequest 将字符串附加到用户代理,如下所示:

    chrome.declarativeNetRequest.updateDynamicRules({
      addRules: [
        {
          id: 1,
          priority: 1,
          action: {
            type: 'modifyHeaders' as RuleActionType,
            requestHeaders: [
              { 
                header: 'user-agent', 
                operation: 'append' as HeaderOperation, 
                value: '-test'
              },
            ],
          },
          condition: {
            regexFilter: 'https://www.yahoo.com\?.*',
            resourceTypes: [
              'main_frame' as ResourceType,
              'sub_frame' as ResourceType,
            ],
          },
        },
      ],
    }, async (result: any) => {
      console.log('created', result);
    });

我在控制台中收到以下错误:

Unchecked runtime.lastError: Rule with id 1 must not specify a request header to be appended.

documentation 中是否缺少我无法在 requestHeaders 上应用 append 操作的限制?我用 responseHeaders 进行了测试,它工作正常(这不是我想要实现的)。

这是一个已知错误,https://crbug.com/1117475

同时在 operation 的值中使用 set 而不是 append