添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

whistle是基于Node实现的跨平台web调试代理工具,主要用于查看、修改HTTP、HTTPS、Websocket的请求、响应,也可以作为HTTP代理服务器使用。

类似的工具有Windows平台上的Fiddler,不同于Fiddler通过断点修改请求响应的方式,whistle采用的是类似配置系统hosts的方式,一切操作都可以通过配置实现,支持域名、路径、正则表达式、通配符、通配路径等多种匹配方式,配置使用起来非常简单。

whistle的所有操作都可以通过类似如下配置方式实现:
pattern operatorURI

  1. 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
  1. operatorURI 为对应的操作,由操作协议+操作值组成 (operatorURI = opProtocol://opValue):

opProtocol(操作协议), 对应某类操作,如:

 # 设置请求服务器IP--host
 pattern host://opValue
 # 本地替换--file协议
 pattern file://opValue

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
  1. pattern 和 operatorURI 在多数情况下位置可以调换,且支持组合模式

我是在Windows上安装的,所以有些命令不适用于Mac和Linux哟

  1. 安装Nodejs

【戳官网地址】 (whistle支持v0.10.0以上版本的Node,为获取更好的性能,推荐安装最新版本的Node。)

在这里插入图片描述
下载以后直接下一步下一步安装完成即可

完成后确认是否安装成功:cmd 输入 node -v (检查是否显示版本号)
在这里插入图片描述

  1. 安装whistle
    Node安装成功后,执行如下npm命令安装whistle
    npm install -g whistle

    (Mac 或 Linux 的非 root 用户需要在命令行前面加 sudo,如:sudo npm install -g whistle
    在这里插入图片描述
    npm默认镜像是在国外,容易出现安装速度很慢或者出现安装不了的情况,比如这样各种超时ERROR……在这里插入图片描述
    如果无法安装或者安装很慢,可以使用taobao的镜像安装:

    $ npm install cnpm -g --registry=https://registry.npm.taobao.org
    $ cnpm install -g whistle

    或者直接指定镜像安装:
    $ npm install whistle -g --registry=https://registry.npm.taobao.org

    忘记截图……如果看到finish或者success之类的肯定就是成功了呀~

  2. 启动whistle
    默认端口是8899,如果端口被占用,可以在启动时通过 -p 来指定新的端口
    我比较习惯在启动的时候自己来指定一个端口,可以和fiddler区分,例如我用的8081:(fiddler是8080~~)
    指定端口启动:w2 start -p 8081
    不用的时候停止:w2 stop
    启动以后不用了再停止呀

  3. 配置浏览器
    启动以后就可以在自己的浏览器上访问到whistle的界面啦~
    http://127.0.0.1:8889 打开浏览器确认服务开启成功
    四不四很清爽~~
    在这里插入图片描述
    启动完whistle后,再配置代理就可以使用啦。

  4. 配置whistle
    https抓包勾选上 Capture TUNNEL CONNECTs 否则无法抓取到HTTPS的数据包
    如果不需要测试http2,或遇到h2无法使用,把h2的开关取消勾选
    注意如果配置有修改,需要重启whistle
    在这里插入图片描述

三、使用–配置代理

  1. 浏览器全局代理
    需要对PC浏览器请求进行抓包的话,需要配置浏览器全局代理
    我平时很少用web端代理,有问题还麻烦指正哟~
    在这里插入图片描述
    在这里插入图片描述

  2. 移动端配置代理
    以iOS为例:
    ①与电脑接入同一个局域网(我是电脑开了热点)
    ②配置代理,填写对应IP与端口
    在这里插入图片描述

  3. 下载证书
    https的包需要下载证书才可以抓到
    ①手机连接代理后在浏览器输入IP:端口,访问whistle页面(无法访问检查是否开了防火墙或IP是否填错)
    ②下载证书
    在这里插入图片描述
    ③安装证书(以iOS为例,Android在浏览器下载完成后可以直接安装)
    下载后在手机设置里可以看到“已下载描述文件”的入口,点击进入可以直接安装
    之后需要在“关于本机”里添加证书信任设置
    在这里插入图片描述

PS: 如果配置完代理,手机无法访问,可能是whistle所在的电脑防火墙限制了远程访问whistle的端口,

关闭防火墙或者设置白名单:windows 防火墙如何设置允许局域网访问本机端口

  1. 抓个包试试!
    手机浏览器访问百度页面的~
    我还设了其它代理,所以没有收到响应的问题先不管它
    在这里插入图片描述

暂时先写这么多,之后有时间再补充配置代理的匹配模式的内容呀

撒花✿✿ヽ(°▽°)ノ✿

whistle支持v0.10.0以上版本的Node,为获取更好的性能,推荐安装最新版本的Node。 Windows或Mac系统,访问https://nodejs.org/,安装LTS版本的Node,默认安装即可 Linux下推荐使用源码安装: 从Node官网下载最新版的Source Code(或者用wget命令下载),解压文件(tar -xzvf node-v 2.安装Whistle Node安装成功后,执行如下npm命令安装whistle (Mac或Linux的非root用户需要在命令行前面加sudo,如:sudo npm install -g whistle) $ npm .
无论是前端开发还是客户端,实际开发过程中,抓包都经常被用到。工欲善其事必先利其器,一款好用的抓包工具也是必须的。 说到抓包,Windows系统上不少人都用过Fiddler,Mac或Linux上用Charles,本文主要推荐一款支持多系统的抓包工具whistlewhistle,具有跨平台(Win/Mac/Linux)的 Fiddler之称,基于NodeJs实现,是一款比较新的新的跨平台web调...
1、Windows和Mac系统,访问https://nodejs.org/,安装LTS版本的Node,默认安装即可 2、安装完成Node后,执行命令,查看当前node版本 C:\Users\zhaoyajun18>node -v (如正常输出Node的版本号,表示Node安装成功(Windows系统需重新打开cmd)) 3、安装whistle
whistle,拼音[wēisǒu])基于 Node 实现的跨平台 web 调试代理工具,类似的工具有 Windows 平台上的 Fiddler,主要用于查看、修改 HTTP、HTTPS、Websocket 的请求、响应,也可以作为 HTTP 代理服务器使用,不同于 Fiddler 通过断点修改请求响应的方式,whistle 采用的是类似配置系统 hosts 的方式,一切操作都可以通过配置实现,支持域名、路径、正则表达式、通配符、通配路径等多种匹配方式,且可以通过 Node 模块扩展功能。 一. 安装使用
Whistle是一款HTTP/HTTPS协议的网络抓包工具,可以用于网络调试、安全测试和性能优化。以下是使用Whistle抓包的步骤: 1. 下载和安装Whistle Whistle支持Windows、Mac、Linux等操作系统,可以在官网上下载相应版本的安装包进行安装。 2. 启动Whistle安装完成后,双击打开Whistle应用程序,启动Whistle。 3. 配置代理 在浏览器中配置代理,将代理地址和端口设置为Whistle的监听地址和端口(默认为127.0.0.1:8899)。 4. 开始抓包 打开浏览器,访问需要抓包的网站。在Whistle的界面中,可以看到所有的HTTP/HTTPS请求和响应信息,包括请求头、请求体、响应头、响应体等。 5. 分析抓包数据 Whistle提供了多种分析工具,可以对抓包数据进行分析和筛选,例如:请求分析、流量分析、性能分析、安全分析等。 6. 结束抓包 在完成抓包后,可以关闭Whistle或者关闭浏览器代理设置,停止抓包。 需要注意的是,在使用Whistle进行抓包时,需要保护好敏感信息,避免泄露。同时,Whistle也可以用于网络攻击和恶意行为,因此在使用时需要遵守法律法规和道德规范。