介绍
whistle(读音[ˈwɪsəl],拼音[wēisǒu])基于Node实现的跨平台web调试代理工具,类似的工具有Windows平台上的Fiddler,主要用于查看、修改HTTP、HTTPS、Websocket的请求、响应,也可以作为HTTP代理服务器使用,不同于Fiddler通过断点修改请求响应的方式,whistle采用的是类似配置系统hosts的方式,一切操作都可以通过配置实现,支持域名、路径、正则表达式、通配符、通配路径等多种匹配方式,且可以通过Node模块扩展功能:
Github
打开Github后键入whistle关键字,第一个项目便是
基本功能
- 查看 HTTP、HTTPS、HTTP2、WebSocket、TCP 请求响应数据
- 修改 HTTP、HTTPS、HTTP2、WebSocket、TCP 请求响应数据修改请求 url、方法、头部、内容等修改响应状态码、头部、内容,并支持本地替换等修改 WebSocket 和 TCP 收发的帧数据
- 设置 hosts(支持 IPv6)、http-proxy、https-proxy、socks
- 作为HTTP代理或反向代理
- 集成常用的 web 调试工具,如 weinre 和 log 等
- 支持用 Node 编写插件扩展
如若图片不清晰可以到Github上或者文档中查看
whistle基本上覆盖了所有抓包调试代理可以实现的功能,且所有操作都可以通过类似配置hosts的方式实现。
传统hosts的配置方式:
# 普通模式
127.0.0.1 xxx.xxx.xxx
# 组合模式
127.0.0.1 xxx.xxx.xxx xxx.xxx.qqq aaa.bbb.ccc
传统hosts配置方式为 ip pattern … patternN,其中pattern只能为域名,ip为纯ip不能带端口
whistle的配置方式不仅兼容上述传统hosts的配置方式,也支持丰富的匹配模式及操作功能,具体如下:
# 默认模式
pattern operatorURI
# 组合模式
pattern operatorURI operatorURI2 operatorURIN
# 如果pattern和operatorURI不同时为普通url,两种位置可以调换
operatorURI pattern
# 组合模式
operatorURI pattern pattern2 patternN
其中:
1、pattern 为匹配请求url的表达式,可以为:域名,路径,正则及通配符等等多种匹配方式,具体内容参见:匹配模式
2、operatorURI 为对应的操作,由操作协议 操作值组成:operatorURI = opProtocol://opValue opProtocol(操作协议) 对应某类操作,具体内容参见:协议列表opValue(操作值) 对应具体操作的参数值
3、pattern 和 operatorURI 不同时为普通url时位置可以调换,且支持组合模式
安装启动
whistle安装过程需要以下步骤(缺一不可):
- 安装Node
- 安装whistle
- 启动whistle
- 配置代理
- 安装根证书
上述步骤的详细操作分别参见如下文档:
- 安装启动whistle
- 安装whistle根证书
安装成功后,可以通过如下命令查看whistle的所有命令行操作:
w2 --help
启动、停止、重启whistle的命令行命令如下:
w2 start
w2 stop
w2 restart
更新whistle只需重新安装下whistle即可
如何使用可以查看Github上的文档或者官方Gitbook的文档
总结
相比一些收费的代理调试工具,whistle具备开源免费的优点,enjoy it!
内容出处:,
声明:本网站所收集的部分公开资料来源于互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。如果您发现网站上有侵犯您的知识产权的作品,请与我们取得联系,我们会及时修改或删除。文章链接:http://www.yixao.com/share/22057.html