HTTP, HTTP2, HTTPS, Websocket debugging proxy
npm install whistle




中文 · English
Whistle(发音 /ˈwisəl/)是基于 Node.js 的跨平台网络抓包与调试工具,特点如下:
1. 功能强大
- 支持 HTTP、HTTPS、HTTP/2、WebSocket、TCP 的抓包与修改请求/响应
- 支持 HTTP、HTTPS、Socks、反向代理等多种代理模式
- 内置常用调试工具:Weinre(远程 DOM 检查)、Console(查看 console 日志)、Composer(请求重放与编辑)等
2. 操作简单
- 通过规则配置即可修改请求/响应
- 提供一站式管理界面:抓包、规则、插件、Weinre/Console/Composer 等集中管理
3. 可扩展
- 支持插件扩展规则与界面功能
- 可作为 NPM 模块在项目中引用
4. 跨平台
- 支持 macOS、Windows、Linux(Ubuntu / Fedora)等桌面系统
- 支持无界面 Linux 服务器环境
桌面用户(macOS/Windows/Linux)推荐使用 Whistle 客户端:https://github.com/avwo/whistle-client
> 客户端可以免去大部分手动安装与配置步骤
按以下 4 步在无界面服务器上快速部署:
1. 安装 Whistle(推荐使用 npm)
- 需要先安装 Node.js:https://nodejs.org/
- 安装命令:npm i -g whistle
> 也支持 Homebrew:brew install whistle
1. 启动 Whistle
- 命令:w2 start
2. 安装根证书(用于 HTTPS 抓包)
- 命令:w2 ca
- 安装过程中可能需手动确认:
- Windows:最后选择 “是 (Y)” 确认
- macOS:可能需要输入开机密码或 Touch ID 验证
3. 设置代理
- 命令:w2 proxy
- 设置指定 IP: w2 proxy "10.x.x.x:8888"
- 关闭系统代理: w2 proxy 0
其它代理方式:
- 推荐:使用 Chrome 插件 ZeroOmega(便于在浏览器间切换代理)
> Chrome 商店地址(若无法访问可手动安装):https://chromewebstore.google.com/detail/proxy-switchyomega-3-zero/pfnededegaaopdmhkdmcofjmoldfiped
- 浏览器或开发者工具自带代理设置(例如 Firefox、微信开发者工具)
- 对于无法直接设置代理的应用,可使用 Proxifier(Windows / macOS)
详细使用指南与示例请查看官方文档:https://wproxy.org/docs/getting-started.html
w2 startw2 stopw2 restartw2 statusw2 caw2 proxy [host:port](w2 proxy 0 关闭)