
ProxyPin请求重写不改后端代码模拟任意接口【免费下载链接】network_proxy_flutterOpen source free capture HTTP(S) traffic software ProxyPin, supporting full platform systems项目地址: https://gitcode.com/GitHub_Trending/ne/network_proxy_flutterProxyPin 是一款开源的全平台抓包工具其请求重写功能允许你在流量经过时直接改写 HTTP 请求与响应。本文解决接口调试的高频痛点把响应体换成假数据、用正则只改一个字段、把线上域名重定向到本地服务、批量给请求加头最后讲规则导出与环境变量切换。把接口的响应体替换成一份假数据测试环境经常挂生产数据又不敢动前端要验证某段逻辑却卡在你这边每次找后端造数据都要排期半天。ProxyPin 请求重写里的替换响应规则会拦截匹配 URL 的响应把状态码、响应头、响应体整体换成你预设的内容请求根本到不了后端。设置页打开请求重写点添加URL 填目标接口动作选择替换响应响应体填入自定义 JSON勾选响应体项后保存重写逻辑在 request_rewrite.dart 的拦截器中执行重发请求后响应面板显示你填的 JSON即生效。假数据通了但有时只想改其中一个字段整份响应替换就太浪费。用正则只改响应体里的一个字段接口返回 300 行 JSON你只想把价格从 999 改成 9.9其余字段必须原样。修改响应规则的修改 Body项支持正则匹配加$1分组引用替换只动匹配部分且会自动重算 Content-Length。添加规则动作选修改响应URL 匹配目标接口修改 Body 项输入匹配正则替换值写新的字段片段保存并启用规则抓包后只有 price 字段变化、其余原样说明正则替换成功。字段级改完如果前端根本连不上你的本地环境下一步是整个域名层面的问题。把线上域名重定向到本地开发服务客户端接口指向线上域名你新接口跑在本地改客户端配置指向 127.0.0.1 既不现实也难维护。重定向规则会把匹配请求的 URL 改写到目标地址规则 URL 里的*通配符会把真实路径带到新地址上匹配逻辑见 request_rewrite_manager.dart。添加规则动作选重定向URL 填https://api.example.com/*重定向地址填http://localhost:8080/*保存并启用请求列表中该请求直接打到 localhost说明重定向生效。域名对齐后如果调试还要给每个请求带上特定标记或版本头……给所有请求批量加上调试请求头调第三方接口时所有请求都得带 Authorization 或调试版本头逐个手动加既慢又容易漏。修改请求规则的添加头部项可以一次配多个头URL 用.*即可全局生效同一规则下还能继续加修改头部删除头部项做更细的控制。添加规则动作选修改请求URL 填.*匹配全部添加添加头部项键填 X-Debug值填 true 后保存任意请求的头部列表里出现 X-Debug说明批量加头成功。规则配好了但开发、测试、预发三套环境来回切换时逐条开关又太费劲。导出整套规则并用环境变量切换环境同一套重写配置在团队里各配各的标准不一环境切换靠手工开关容易漏。规则可右键导出为proxypin-rewrites.config文件再导入他人设备且重写值支持{{name}}环境变量占位符渲染逻辑在 environment_manager.dart切换环境只需改变量值。规则列表右键选中规则点导出保存配置文件队友点导入加载该文件把重定向地址写成{{api_host}}/*环境变量页定义 api_host 并启用它改变量值后请求 URL 随之变化说明环境切换生效。替换、修改、重定向、批量加头、规则共享这五件事基本覆盖接口调试的日常场景。想深入实现可以从拦截器与规则管理器两个文件入手。仓库地址git clone https://gitcode.com/GitHub_Trending/ne/network_proxy_flutter【免费下载链接】network_proxy_flutterOpen source free capture HTTP(S) traffic software ProxyPin, supporting full platform systems项目地址: https://gitcode.com/GitHub_Trending/ne/network_proxy_flutter创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考