更新时间:2026-07-14;使用模型:Codex(GPT-5);用户:Jsmond2016
- 请求代理:使用 Manifest V3
declarativeNetRequest将匹配的 API 请求重定向到 Mock 地址。 - 模块化管理:按业务模块管理接口,提供“全部接口”聚合视图、搜索和状态排序。
- 接口操作:支持添加、编辑、复制、迁移、删除、批量删除、单接口测试和单接口调试。
- Apifox 同步:通过项目 ID 和访问令牌在线导出 OpenAPI 数据,按 tag 同步并处理合并冲突。
- 迭代信息:为 tag 维护需求、技术、原型、测试用例和排期文档,并复制迭代或 CR 信息。
- 存档恢复:将当前面板的完整配置保存到 IndexedDB,支持查看、恢复和删除历史快照。
- 权限点复制:按当前模块、勾选接口或全部模块生成 CMS 权限点数据。
- 跨扩展 Quick Mock:接收其他扩展发送的 URL 列表,批量补全并创建外部 Mock 模块。
- Chrome 与 Firefox:同一代码库提供 Chrome/Edge 和 Firefox 构建。
完整操作流程见功能使用指南。
环境版本以 package.json 中的 Volta 配置为准:Node.js 22.17.0、pnpm 10.5.2。
git clone https://github.com/Jsmond2016/api_proxy_tool_ext.git
cd api_proxy_tool_ext
pnpm install
pnpm build:chromeChrome/Edge 加载方式:
- 打开
chrome://extensions/或edge://extensions/。 - 开启“开发者模式”。
- 点击“加载已解压的扩展程序”。
- 选择项目中的
dist_chrome/目录。
Firefox 构建与加载:
pnpm build:firefox打开 about:debugging#/runtime/this-firefox,选择“临时载入附加组件”,再选择 dist_firefox/manifest.json。
- 点击扩展图标,在 Popup 中开启全局 Mock,并进入配置页。
- 选择默认模块或点击模块栏
+新建模块。 - 点击“添加”,填写接口地址、名称、Mock URL、请求方式和匹配方式。
- 开启接口行的 Mock 开关。
- 使用“测试”验证 Mock 地址,再从业务页面发起真实请求。
需要批量导入接口时,可在顶部使用“设置 Apifox 配置”;需要保留迭代状态时,可设置迭代信息后创建存档。
当前同步界面使用 Apifox 在线导出能力,需要:
- Apifox 项目数字 ID
- 个人访问令牌 Access Token
- 云端 Mock 令牌
- 一个或多个接口 tag
同步后,添加接口表单可根据路径自动补充名称、方法、Mock 地址、权限点和 Apifox 链接。刷新操作只替换 Apifox 同步维护的接口,不覆盖手工接口或外部 Quick Mock 模块。
不要把 Access Token、Mock 令牌或其他凭据写入仓库、Issue、截图或共享文档。
| 命令 | 说明 |
|---|---|
pnpm dev |
启动 Chrome 开发模式 |
pnpm dev:firefox |
启动 Firefox 开发模式 |
pnpm build:chrome |
构建到 dist_chrome/ |
pnpm build:firefox |
构建到 dist_firefox/ |
pnpm package |
构建并生成 Chrome/Firefox 本地安装包 |
pnpm test |
运行 Vitest 测试 |
pnpm lint |
检查 src/ 下的 TypeScript/React 代码 |
pnpm docs:dev |
启动 VitePress 文档站 |
pnpm docs:build |
构建 VitePress 文档站 |
api_proxy_tool_ext/
├── src/
│ ├── pages/
│ │ ├── background/ # Service Worker 与代理规则
│ │ ├── options/ # 完整配置页面
│ │ └── popup/ # 快速全局开关与配置页入口
│ ├── store/ # Zustand 状态
│ ├── types/ # 配置与消息类型
│ └── utils/ # 缓存、归档、权限点和数据处理
├── docs/ # VitePress 文档
├── scripts/ # 版本与 changelog 脚本
├── manifest.json # Chrome Manifest V3 清单
├── vite.config.chrome.ts
└── vite.config.firefox.ts
在线文档由 GitHub Pages 自动部署:https://jsmond2016.github.io/api_proxy_tool_ext/
扩展需要 storage、declarativeNetRequest、declarativeNetRequestFeedback 以及 HTTP/HTTPS 页面访问权限,用于保存配置、生成代理规则和匹配页面请求。
用户配置保存在浏览器本地存储;存档和 Parsed API 缓存保存在 IndexedDB。隐私说明见隐私声明。