中文 · English
Whistle(发音 /ˈwisəl/)是基于 Node.js 的跨平台网络抓包与调试工具,特点如下:
- 功能强大
- 支持 HTTP、HTTPS、HTTP/2、WebSocket、TCP 的抓包与修改请求/响应
- 支持 HTTP、HTTPS、Socks、反向代理等多种代理模式
- 内置常用调试工具:Weinre(远程 DOM 检查)、Console(查看 console 日志)、Composer(请求重放与编辑)等
- 操作简单
- 通过规则配置即可修改请求/响应
- 提供一站式管理界面:抓包、规则、插件、Weinre/Console/Composer 等集中管理
- 可扩展
- 支持插件扩展规则与界面功能
- 可作为 NPM 模块在项目中引用
- 跨平台
- 支持 macOS、Windows、Linux(Ubuntu / Fedora)等桌面系统
- 支持无界面 Linux 服务器环境
桌面用户(macOS/Windows/Linux)推荐使用 Whistle 客户端:https://github.com/avwo/whistle-client
客户端可以免去大部分手动安装与配置步骤
按以下 4 步在无界面服务器上快速部署:
- 安装 Whistle(推荐使用 npm)
- 需要先安装 Node.js:https://nodejs.org/
- 安装命令:
npm i -g whistle也支持 Homebrew:
brew install whistle
- 启动 Whistle
- 命令:
w2 start
- 命令:
- 安装根证书(用于 HTTPS 抓包)
- 命令:
w2 ca - 安装过程中可能需手动确认:
- Windows:最后选择 “是 (Y)” 确认
- macOS:可能需要输入开机密码或 Touch ID 验证
- 命令:
- 设置代理
- 命令:
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 start - 停止:
w2 stop - 重启:
w2 restart - 查看状态:
w2 status - 安装证书:
w2 ca - 设置代理:
w2 proxy [host:port](w2 proxy 0关闭)