去年有空的时候利用一个 go 端开源代理编写了一个用于替换响应的小工具(http://testerhome.com/topics/31557)
其实 fiddler 有类似的功能,但我想针对 URL 进行相应内容、响应头的更新、替换,fiddler 会比较麻烦或不好复用,于是写了个轻量的。
最早的规则是 json 文件,修改后自动更新(10s),但看到一些 web 端的 json 编辑器后,就稍微优化下,使用 jsoneditor,可以在 web 端进行配置修改。
使用说明
【一】添加证书为根路径信任证书
windows 安装 z.x509.cer 证书(双击,不小心删除也没关系会重新生成),选择第三方根证书颁发机构,这样重启浏览器,使用 go_httpmock 的代理时的 https 请求就可信任了。
另外直接访问http://127.0.0.1:8088页面直接提供下载证书,及修改配置文章源自玩技e族-https://www.playezu.com/179151.html
【二】配置上行(upstream)代理
在启动之前配置 upstreamProxyConfig.json 即可设置上行代理,结构如下:文章源自玩技e族-https://www.playezu.com/179151.html
upstreamProxyConfig.json
{
"proxyActive": false,
"proxyUrl":"http://192.168.16.67:8080",
"proxyUser": "",
"proxyPassword": ""
}
- proxyActive: false 表示不使用上行代理,true 表示启用
- proxyUrl:如上格式,表示使用我们的 P 版 67 代理,如想转发到 fiddler 上,可以配置"http://127.0.0.1:8888"
- proxyUser,proxyPassword:则表示上行代理需要验证的情况,输入对应用户名、密码
【三】规则配置(访问:http://127.0.0.1:8088)
主要是利用 jsoneditor 的模板及 json-schema 校验来简化一些配置操作,如某项规则不需要,移除即可文章源自玩技e族-https://www.playezu.com/179151.html
具体功能 (respFiles 文件夹下放用于替换的文件)
- 可以直接获取提供的响应文件: http://[ip]:8088/respFiles/[文件名]
- 利用代理,根据 URL 匹配规则,针对对应 URL 进行修改、增加相应头,也可以利用准备好的文件(比如 json、图片)进行替换响应内容
- 也可利用代理,根据 URL 匹配规则,进行 URL 匹配替换或修改转发到新的地址上
效果演示(替换响应的图片 ---- 恶作剧)
文章源自玩技e族-https://www.playezu.com/179151.html代码及 released 见 github(只编译了 windows 的,其他系统自行编译)
https://github.com/mao303mao/go_httpmock文章源自玩技e族-https://www.playezu.com/179151.html文章源自玩技e族-https://www.playezu.com/179151.html
未知地区 1F
不错的小工具,赞一个