Whistle

HTTP, HTTP2, HTTPS, Websocket debugging proxy
Alternatives To Whistle
Project NameStarsDownloadsRepos Using ThisPackages Using ThisMost Recent CommitTotal ReleasesLatest ReleaseOpen IssuesLicenseLanguage
Nps27,742
3 days ago53October 09, 2021471gpl-3.0Go
一款轻量级、高性能、功能强大的内网穿透代理服务器。支持tcp、udp、socks5、http等几乎所有流量转发,可用来访问内网网站、本地支付接口调试、ssh访问、远程桌面,内网dns解析、内网socks5代理等等……,并带有功能强大的web管理端。a lightweight, high-performance, powerful intranet penetration proxy server, with a powerful web management terminal.
Whistle13,193112025 days ago570November 05, 202331mitJavaScript
HTTP, HTTP2, HTTPS, Websocket debugging proxy
Hotel9,918910a month ago84October 23, 2023124mitJavaScript
🏩 A simple process manager for developers. Start apps from your browser and access them using local domains
Anyproxy7,193731502 years ago176June 18, 2020241apache-2.0JavaScript
A fully configurable http/https proxy in NodeJS
Goproxy5,6031,8631,82217 days ago1October 15, 2022215bsd-3-clauseGo
An HTTP proxy library for Go
Redbird4,21875673 years ago67December 17, 2019123bsd-2-clauseJavaScript
A modern reverse proxy for node
Haproxy4,142
2 days ago311otherC
HAProxy Load Balancer's development branch (mirror of git.haproxy.org)
Redsocks3,084
25 days ago1February 27, 201872C
transparent TCP-to-proxy redirector
Nginx Tutorial3,032
10 months ago5cc-by-sa-4.0JavaScript
这是一个 Nginx 极简教程,目的在于帮助新手快速入门 Nginx。
Warpgate2,958
5 days ago104apache-2.0Rust
Smart SSH, HTTPS and MySQL bastion that needs no client-side software
Alternatives To Whistle
Select To Compare


Alternative Project Comparisons
Readme

whistle logo

whistle

NPM version node version Test coverage npm download NPM count License

Mac 或 Windows 系统推荐使用客户端版本:avwo/whistle-client

Whistle 是基于 Node 实现的跨平台抓包调试工具,其主要特点:

  1. 完全跨平台:支持 Mac、Windows 等桌面系统,且支持服务端等命令行系统
  2. 功能强大(理论上可以对请求做任意修改)
    • 支持作为 HTTP、HTTPS、SOCKS 代理及反向代理
    • 支持抓包及修改 HTTP、HTTPS、HTTP2、WebSocket、TCP 请求
    • 支持重放及构造 HTTP、HTTPS、HTTP2、WebSocket、TCP 请求
    • 支持设置上游代理、PAC 脚本、Hosts、延迟(限速)请求响应等
    • 支持查看远程页面的 console 日志及 DOM 节点
    • 支持用 Node 开发插件扩展功能,也可以作为独立 npm 包引用
  3. 操作简单
    • 直接通过浏览器查看抓包、修改请求
    • 所有修改操作都可以通过配置方式实现(类似系统 Hosts),并支持分组管理
    • 项目可以自带代理规则配置并一键设置到本地 Whistle 代理,也可以通过定制插件简化操作

一键安装

已安装 brew 的 PC,可以省略以下 1、2 步骤,直接通过以下方式一键安装:brew install whistle && w2 start --init(arm64 平台尝试用 brew install node && npm i -g whistle && w2 start --init

  1. 安装 Node(建议安装最新的 LTS 版本,如已安装忽略此步骤):https://nodejs.org/
  2. 一键安装,在命令行执行以下命令:
    npm i -g whistle && w2 start --init
    

    上述命令会先全局安装 Whistle 的 npm 包后,启动 Whistle 并设置系统全局代理,以及安装系统根证书,目前一键安装只支持 Mac & Windows 系统,其它系统按照下面 手动安装 的方式操作。

    如果安装过程时报错 Bad CPU type in executable,在命令执行 arch -x86_64 zsh 再重新执行一键安装命令。

  3. 一键安装过程中注意事项:
    • Mac 需要两次输入开机密码或指纹验证

      输入开机密码

      输入指纹
    • Windows 需要最后点击 “是(Y)” 确认

      点击 是(Y)

如果需要自定义代理配置或根证书(如设置其它代理,根证书或代理白名单等)可以通过以下命令实现:

  1. w2 proxy 设置系统全局代理:https://wproxy.org/whistle/proxy.html
  2. w2 ca 设置系统根证书:https://wproxy.org/whistle/proxy.html

也可以用下面 手动安装 方式。

手动安装

非 Mac & Windows 系统或一键安装失败可以按下面方式设置代理和安装根证书:

  1. 设置代理:https://wproxy.org/whistle/install.html
  2. 安装根证书:https://wproxy.org/whistle/webui/https.html

快速上手

安装成功后,用 Chrome 打开链接 http://local.whistlejs.com 即可看到 Whistle 的抓包配置界面:

抓包界面 image

详细用法参见:Whistle 帮助文档

通过 SwitchyOmega 设置代理

安装 SwitchyOmega

打开 Chrome 扩展商店进行安装 https://chrome.google.com/webstore/detail/proxy-switchyomega/padekgcemlokbadohgkifijomclgjgif

配置 SwitchyOmega

全局代理如果会影响到某些客户端的请求(客户端设置了 ssl pinning),也可以使用 Chrome 插件设置代理(只对 Chrome 生效):

可以通过 w2 proxy off 关闭全局代理

  1. 设置 Whistle 代理

  2. 选择 Whistle 代理

    image

安全设置

  1. 通过启动参数给管理界面设置用户名密码:w2 restart -n yourusername -w yourpassword
  2. 通过插件给经过代理的请求设置用户名密码:https://github.com/whistle-plugins/whistle.proxyauth

License

MIT

Popular Proxy Projects
Popular Https Projects
Popular Networking Categories
Related Searches

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.
Javascript
Http
Proxy
Port
Hosts
Certificate
Https
Wildcard
Charles