declarativeNetRequest.ModifyHeaderInfo
要修改的请求的请求标头或响应标头,在 rule.action.requestHeaders 数组或 rule.action.responseHeaders 数组中声明,用于 rule.action.type 为"modifyHeaders"这个规则。
每个对象描述了一个标头修改。要修改多个标头,可以在这些数组中指定多个对象,或者跨多个规则。
匹配的 modifyHeaders 规则将按照匹配优先级中描述的顺序去应用。在每个扩展中,所有优先级低于或等于匹配的 allow 或 allowAllRequests 规则的 modifyHeaders 规则都会被忽略。
如果多个 modifyHeaders 规则指定了相同的标头,则标头的最终修改结果将根据每个规则的优先级和指定的操作确定:
- 如果一个规则为标头附加条目,则较低优先级的规则只能对标头附加条目。不允许进行
set和remove操作。 - 如果一个规则设置了一个标头,那么低优先级规则除了来自相同扩展的
append规则外,不能修改该标头。 - 如果一个规则已经删除了一个标头,那么低优先级规则不能修改该标头。
类型
此类型的值为对象,包含以下属性:
标头限制
在 Chrome 中,对以下请求标头支持 "append":
AcceptAccept-EncodingAccept-LanguageAccess-Control-Request-HeadersCache-ControlConnectionContent-LanguageCookieForwardedIf-MatchIf-None-MatchKeep-AliveRangeTeTrailerTransfer-EncodingUpgradeViaWant-DigestX-Forwarded-For
在 Firefox 中,扩展需要具有主机权限才能对 Host 标头设置新值。
浏览器兼容性
>webextensions.api.declarativeNetRequest.RuleAction.requestHeaders
Loading…
webextensions.api.declarativeNetRequest.RuleAction.responseHeaders
Loading…