Github(欢迎 + Star): https://github.com/avwo/whistle
whistle(读音[ˈwɪsəl],拼音[wēisǒu]) 基于 Node 实现的跨平台 web 调试代理工具,类似的工具有 Windows 平台上的Fiddler,主要用于查看、修改 HTTP、HTTPS、Websocket 的请求、响应,也可以作为 HTTP 代理服务器使用,不同于 Fiddler 通过断点修改请求响应的方式,whistle 采用的是类似配置系统 hosts 的方式,一切操作都可以通过配置实现,支持域名、路径、正则表达式、通配符、通配路径等多种匹配方式,且可以通过 Node 模块扩展功能:
whistle 的所有操作都可以通过类似如下配置方式实现:
pattern operatorURI
其中:
pattern 为匹配请求 url 的表达式,可以为:域名,路径,正则及通配符等等多种匹配方式:
完整内容参见:匹配模式# 域名匹配
www.example.com
# 带端口的域名
www.example.com:6666
# 带协议的域名,支持:http、https、ws、wss、tunnel
http://www.example.com
# 路径匹配,同样支持带协议、端口
www.example.com/test
https:/www.exapmle.com/test
https:/www.exapmle.com:6666/test
# 正则匹配
/^https?://www\.example\.com\/test/(.*)/ referer://http://www.test.com/$1
# 通配符匹配
^www.example.com/test/*** referer://http://www.test.com/$1
operatorURI 为对应的操作,由操作协议 + 操作值组成 (
operatorURI = opProtocol://opValue
):
opProtocol(操作协议), 对应某类操作,如:
opValue(操作值), 对应具体操作的参数值,如:
完整内容参见:操作值# 设置请求服务器IP--host
pattern host://opValue
# 本地替换--file协议
pattern file://opValue
# 设置请求服务器IP--host协议
pattern host://127.0.0.1:6666 # 或 pattern 127.0.0.1:6666
# 本地替换--file协议
pattern file:///User/test/dirOrFile # 或 pattern /User/test/dirOrFile
pattern file://E:\test\dirOrFile # 或 pattern E:\test\dirOrFile
pattern 和 operatorURI 在多数情况下位置可以调换,且支持组合模式,具体参见:配置方式
- 安装启动
- 命令行操作
- 手动更新
- 快速上手
- 配置方式
- 匹配模式
- 操作值
- 常用功能
- 插件开发
- 注意事项
- 常见问题
- 界面功能
- 协议列表
- 用户反馈