操作指南 · 开发者

如何在 Chrome 里修改请求头

NetworkRules3 分钟阅读

简短回答

新增一条请求头规则,写上 URL 匹配和要设置或移除的 header——命中的请求在离开浏览器时就地改写。改没改成要看命中日志,因为 DevTools 显示的可能仍是改写前的请求头。

  1. 1

    新增一条 header 动作的规则,起一个一眼能认出的名字。

  2. 2

    用 URL 匹配限定范围(如 ||api.example.com^),选好 HTTP 方法。

  3. 3

    添加要设置或覆盖的 header——或把某些 header 标记为移除。

  4. 4

    保存并重新加载——命中的请求现在带上了修改后的请求头。

  5. 5

    在命中日志里确认改写,并按环境(dev / staging / prod)分组管理 header 套装。

用不同的 auth token 测 API、加一个 staging 后端认识的 X-Debug 标记、伪造 Accept-Language 检查本地化,或删掉某个 header 来复现客户端 bug——归根结底是同一个动作:在请求离开浏览器之前改写请求头。这不需要代理;一条限定范围的 header 规则就能按 URL、在本地做到。它也比在 DevTools 里手改单个请求好用:规则作用于每个命中的请求,重载后仍在,不关就一直有效。

Chrome 里的 NetworkRules 规则编辑器:URL 匹配带正则选项,并可选择 HTTP 方法来限定规则范围
范围先行:每条规则——请求头、重定向、拦截或 mock——都绑定一个 URL 匹配和你选定的方法,header 改动绝不会泄漏到无关站点。

新增一条请求头规则

创建一条 header 动作的规则,按用途起名——“staging 认证”比“headers 3”对未来的你有用得多。

用 URL 匹配限定范围

填上规则适用的匹配模式,如 ||api.example.com^,并选好方法。这是它与全浏览器生效的 header 切换器的最大区别:注入只作用于命中的请求,你的 token 绝不会捎带着发给第三方域名。

设置或移除 header

逐个添加要注入或覆盖的 header——Authorization: Bearer …X-Debug: 1——或把某一个标记为移除。注意有一小撮 header 由浏览器自己管辖,任何扩展都改不了。

保存后到命中日志验证

重新加载并盯住命中日志:它记录规则改写了哪些请求,工具栏还有徽标计数。这里别只信 DevTools 的 Network 面板——它可能显示页面最初组装的请求,让一次成功的改写看起来像静默失败。

按环境组织

每个环境保留一套 header——dev、staging、prod——做成分组,一键切换,而不是就地改值。如果你从 ModHeader 或 Requestly 迁来,导入工具会转换现有规则,并如实标出映射不了的部分。

你的 header 值放在哪里

header 规则里常有真实的 token,所以存储方式很要紧:规则存在你设备本地,不同步、不回传,没有遥测。免费版 header 规则不限数量;在 Chrome 上,fetch/XHR 之外的请求类型需要 Full Mode,开启期间会显示醒目的调试横幅。

改写请求头,还带生效凭证

限定范围的 header 注入、按环境分组、命中日志——本地、零遥测,支持 ModHeader 导入。

了解 NetworkRules →