Skip to content

baohongyang/header-snip

Repository files navigation

Header Snip

从浏览器网络请求中快速提取请求头
常用项一键匹配 · 支持文本 / JSON 复制 · 金箔账册风格界面

Manifest V3 MIT License Version


界面预览

Header Snip Popup 主界面:常用项、网络请求与请求头

Popup 主界面 · 选择常用项 / 搜索请求 · 勾选并复制请求头

Header Snip 常用项管理选项页

选项页 · 新建与编辑常用项(URL 规则、请求头名称等)


目录


它能做什么

Header Snip 是一款 Chrome / Edge 等 Chromium 内核浏览器 扩展,帮助你在本地调试、配置代理或对接平台时,从当前标签页捕获的网络请求里按需复制请求头

能力 说明
常用项 预先配置 URL 规则与要提取的头名称,一键筛选匹配请求
快速搜请求 不配置常用项时,也可按 URL 关键字搜索当前页请求
多选复制 勾选多个请求头,按 文本JSON 批量复制
单条复制 每条请求头卡片右上角可单独复制
本地存储 常用项保存在浏览器本地,不上传服务器

适用场景

  • AuthorizationCookie、自定义 Token 等复制到 Postman、curl 或本地代理工具
  • 同一站点多接口调试时,用常用项固定 URL 规则,减少重复筛选
  • 临时抓取某次请求的若干请求头,无需打开开发者工具逐条复制

安装

本扩展尚未上架 Chrome 网上应用店,请通过「加载已解压的扩展程序」从源码安装。

环境要求

  • Chromium 内核浏览器(Chrome、Edge、Brave 等)
  • 支持 Manifest V3

步骤

1. 获取源码

git clone https://github.com/baohongyang/header-snip.git
cd header-snip

也可直接下载 ZIP 并解压。

2. 加载扩展

  1. 地址栏打开 chrome://extensions/(Edge 为 edge://extensions/
  2. 开启右上角 开发者模式
  3. 点击 加载已解压的扩展程序
  4. 选择包含 manifest.json 的项目根目录(即本仓库根目录)

3. 固定到工具栏(可选)

在扩展管理页点击图钉,便于打开 Popup。

若加载失败,请确认选中的是仓库根目录,且未删除 manifest.jsonbackground.js 等文件。


快速上手

方式 A:使用常用项(推荐)

适合反复访问同一类接口(同一域名、路径规则、固定要拷的头)。

flowchart LR
  A[选项页添加常用项] --> B[打开目标网页并触发请求]
  B --> C[Popup 选择常用项]
  C --> D[在匹配列表中选一条请求]
  D --> E[勾选请求头并复制]
Loading
  1. 右键扩展图标 → 选项,或 Popup 内点击 管理常用项
  2. 新建常用项:填写名称、URL 关键字、要提取的请求头名称
  3. 打开会发请求的网页(登录、点按钮触发接口等)
  4. 打开 Popup → 常用项 区域点击对应条目
  5. 匹配的请求 中选中一条请求
  6. 请求头 区域勾选需要的头 → 复制已选复制全部

取消选中常用项:再次点击已选条目,或点击 清除选择

方式 B:快速搜索(无需常用项)

适合偶尔抓一次、尚未配置常用项的场景。

  1. 在目标页面触发网络请求
  2. 打开 Popup,在 网络请求 区域的搜索框输入 URL 关键字(如 api/v1/user
  3. 从列表中选择一条请求
  4. 勾选请求头后复制(快速模式下可自行勾选任意已捕获的头)

常用项配置说明

选项页 可配置以下字段:

字段 说明
名称 仅用于 Popup 列表展示与搜索,不参与 URL 匹配
URL 关键字 每行一个,或用英文逗号分隔;匹配 主机名 + 路径(不含 Query,避免长 Query / Base64 误匹配)
URL 匹配方式 任一包含:URL 中含任意关键字即命中;全部包含:须同时包含所有关键字
要提取的请求头 每行一个头名称,如 AuthorizationCookie
HTTP 方法 可选,留空表示不限
仅当前标签页 默认开启,只匹配当前激活标签页的请求

示例

名称 URL 关键字 请求头
平台 API api.example.com Authorization
知乎 Analytics zhihu.com/api Authorizationx-zse-96

配置完成后,在 Popup 的 常用项 搜索框中可按名称筛选列表;网络请求 搜索框仅用于搜请求,二者互不干扰。


界面说明

Popup 主界面

界面预览 中的 home 截图。自上而下分为三块:

区域 作用
常用项 管理、搜索、选择预设;选中后下方展示「匹配的请求」
网络请求 未选常用项时按关键字搜请求;选中常用项后变为「匹配的请求」并可二次按 URL 过滤
请求头 展示所选请求的头列表,支持全选、文本/JSON 格式、批量或单条复制

选项页(常用项管理)

界面预览 中的 manager 截图。在独立标签页中打开,用于常用项的增删改,适合详细配置 URL 关键字、匹配方式与要提取的请求头名称。


权限与隐私

权限 用途
webRequest 在本地监听请求发送前的头信息(写入内存环形缓存,最多约 500 条)
storage 在本地保存常用项、复制格式等设置
tabs 获取当前标签页 ID,用于「仅当前标签页」过滤
<all_urls> 在任意站点捕获请求(仅在本地处理,不对外发送)
  • 所有数据均在本机浏览器内处理与存储
  • 不会将请求 URL、请求头等内容上传到开发者服务器
  • 关闭标签页或 Service Worker 休眠后,内存中的请求缓存会清空,需重新触发请求后再抓取

已知限制

  1. MV3 Service Worker:后台可能休眠,长时间未打开扩展后,需刷新页面并重新触发请求
  2. 请求缓存条数:内存中最多保留约 500 条近期请求,超出后旧记录被丢弃
  3. 仅捕获可监听请求:与开发者工具 Network 面板类似,受浏览器与安全策略约束
  4. URL 匹配范围:常用项按「主机 + 路径」匹配,不含 Query 参数;在「匹配的请求」中可用搜索框对完整 URL 再过滤
  5. 未上架应用店:当前仅支持源码加载,更新需自行拉取新版本后重新加载扩展

项目结构

header-snip/
├── manifest.json      # 扩展清单(MV3)
├── background.js      # Service Worker:请求缓存与消息处理
├── shared.js          # 共用逻辑:匹配、格式化、存储
├── popup.html         # Popup 页面
├── popup.js / popup.css
├── options.html       # 选项页(常用项管理)
├── options.js / options.css
├── theme.css          # 设计 token(颜色、字体等)
├── design-preview.html  # UI 设计预览(可选,非运行必需)
├── docs/images/       # README 截图等资源
│   ├── home.png       # Popup 主界面
│   └── manager.png    # 选项页
├── README.md
└── LICENSE

开发与贡献

本地修改后生效

chrome://extensions/ 中点击本扩展的 刷新 按钮,或重新加载已解压目录。

打包(可选,勿提交私钥)

在扩展管理页使用 打包扩展程序 可生成 .crx。生成的 *.pem 私钥务必加入 .gitignore,不要上传到 GitHub。

参与贡献

  1. Fork 本仓库
  2. 创建功能分支并提交改动
  3. 发起 Pull Request

问题与建议请使用 GitHub Issues


许可证

本项目采用 MIT License 开源。


若对你有帮助,欢迎 Star

About

从浏览器网络请求中提取指定请求头,支持常用项与 URL 过滤,文本/JSON 复制

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors