প্রকল্প সম্পর্কে

概述 Whistle(发音 /ˈwisəl/)是一个基于 Node.js 的跨平台网络抓包与调试代理,以 npm 包形式发布,遵循 MIT 许可证。它支持 Node.js 版本 >= 8,并提供丰富的抓包和调试功能。 主要功能 - 抓包与改写:支持 HTTP、HTTPS、HTTP/2、WebSocket、TCP 的抓包,并可修改请求和响应内容。 - 代理模式:支持 HTTP、HTTPS、Socks 以及反向代理等多种代理模式。 - 内置调试工具:包括 Weinre(远程 DOM 检查)、Console(查看 console 日志)、Composer(请求重放与编辑)等。 - 规则配置:通过规则配置即可修改请求/响应,无需编写代码。 - 一站式管理界面:抓包、规则、插件以及 Weinre/Console/Composer 等功能集中在一个界面中管理。 - 可扩展:支持以插件方式扩展规则与界面功能,也可作为 NPM 模块在项目中引用。 - 跨平台:支持 macOS、Windows、Linux(Ubuntu / Fedora)等桌面系统,同时支持无界面的 Linux 服务器环境。 安装与上手 - 桌面用户推荐使用 Whistle 客户端(avwo/whistle-client),可省去大部分手动安装与配置步骤。 - 无界面 Linux / 服务器环境:先安装 Node.js,再执行 npm i -g whistle;也支持通过 Homebrew 安装(brew install whistle)。 - 启动:w2 start。 - 安装根证书(用于 HTTPS 抓包):w2 ca。安装过程中可能需手动确认,例如 Windows 最后选择“是 (Y)”,macOS 可能需要输入开机密码或 Touch ID。 - 设置代理:w2 proxy;也可指定地址,如 w2 proxy "10.x.x.x:8888",或用 w2 proxy 0 关闭系统代理。 - 其它代理方式:Chrome 插件 ZeroOmega(便于在浏览器间切换代理)、浏览器或开发者工具自带的代理设置(如 Firefox、微信开发者工具),以及对无法直接设置代理的应用使用 Proxifier(Windows / macOS)。 常用命令 start(启动)、stop(停止)、restart(重启)、status(查看状态)、ca(安装证书)、proxy [host:port](设置代理,proxy 0 关闭)。 文档与许可 详细使用指南与示例见官方文档 https://wproxy.org/docs/getting-started.html;项目采用 MIT 许可证,详见 LICENSE 文件。