Whistle Web Debugging Proxy介绍及使用

大家好,今天继续给大家分享一款抓包工具,这款抓包工具是网页的形式,方便多人访问同时维护。Whistle Web Debugging Proxy是一个用于HTTP、HTTPS、WebSocket等网络协议的跨平台调试工具。它可以帮助开发者对网络请求进行捕捉、分析、修改和重定向等操作,从而提高调试效率。

一、代理设置

要使Whistle能够捕获HTTP和HTTPS请求,首先需要为设备设置代理。以下是部分常见设备的代理设置方法:

iOS设备:

在"设置" -> "无线局域网" -> "当前连接的Wi-Fi网络" -> "配置代理"中设置代理服务器地址和端口。

Android设备:

在"设置" -> "网络和互联网" -> "Wi-Fi" -> "当前连接的Wi-Fi网络" -> "修改网络" -> "高级选项" -> "代理"中设置代理服务器地址和端口。

Windows:

在"Internet选项" -> "连接" -> "局域网设置"中设置代理服务器地址和端口。

MacOS:

在"系统偏好设置" -> "网络" -> "高级" -> "代理"中设置代理服务器地址和端口。

注意:

如果捕获的协议为https,需要安装证书。

点击上方"HTTPS",出现二维码,手机扫描二维码下载证书并安装即可。

二、使用Web界面

打开浏览器访问http://127.0.0.1:8899即可进入Whistle的Web界面。在此界面上,可以查看捕获到的请求、设置过滤规则、修改请求与响应以及配置自定义规则等。

三、基本功能

1、捕获请求

Whistle会自动捕获通过代理的所有HTTP和HTTPS请求。在Web界面的"Network"标签页中,可以查看到捕获到的请求列表。点击某个请求,可以查看请求和响应的详细信息,包括URL、方法、头部、内容等。

2、过滤请求

在捕获大量请求时,可能希望只查看特定类型的请求。Whistle提供了灵活的过滤功能,可以根据URL、方法、状态码等条件过滤请求。

在Web界面的"Network"标签页底部,有一个过滤器输入框。输入过滤条件后,按Enter键应用过滤器。支持的过滤条件包括:

url:xxx:过滤URL包含xxx的请求

method:GET:过滤方法为GET的请求

statusCode:200:过滤状态码为200的请求

contentType:json:过滤响应内容类型为JSON的请求

3、修改请求与响应

Whistle允许对请求和响应进行实时修改。在"Network"标签页中,选择一个请求,点击"Composer"标签,即可对请求进行编辑。编辑完成后,点击"Send"按钮发送修改后的请求。

同样,你也可以修改响应内容。在"Network"标签页中,选择一个请求,点击"Response"标签,在"Body"区域对响应内容进行编辑。编辑完成后,点击"Save"按钮保存修改。

4、重定向请求

Whistle可以将请求重定向到其他URL或本地文件。在Web界面的"Rules"标签页中,添加一条重定向规则,格式如下:

bash 复制代码
原始URL 重定向目标

例如,将http://example.com/test.js重定向到本地文件/path/to/local/test.js:

bash 复制代码
http://example.com/test.js file:///path/to/local/test.js
5、自定义规则

Whistle提供了丰富的自定义规则功能,可以满足各种复杂场景下的调试需求。在Web界面的"Rules"标签页中,你可以编写自定义规则。

以下是一些常见的自定义规则:

替换请求头:reqHeaderValue://headerName=value

替换响应头:resHeaderValue://headerName=value

替换请求参数:reqQueryValue://paramName=value

替换请求体:reqBody://content

替换响应状态码:statusCode://code

相关推荐
CppPlayer-程序员阿杜6 分钟前
字节二面:TCP 链接中,接收方不调用 recv,会出现什么情况?——拆解大厂面试题(校招)
网络协议·计算机网络·tcp·c++面试·c++面试真题
老六ip加速器13 分钟前
手机改了IP地址,定位位置会改变吗?
网络·tcp/ip·智能手机
测试界吖吖34 分钟前
HTTPS 之fiddler抓包--jmeter请求
自动化测试·软件测试·功能测试·jmeter·程序人生·https·fiddler
程序员可可37 分钟前
JMeter接口自动化发包与示例
运维·自动化测试·软件测试·功能测试·jmeter·程序人生·自动化
我是小路路呀1 小时前
vue开始时间小于结束时间,时间格式:年月日时分
前端·javascript·vue.js
虾球xz1 小时前
游戏引擎学习第201天
前端·学习·游戏引擎
我自纵横20231 小时前
JavaScript 中常见的鼠标事件及应用
前端·javascript·css·html·计算机外设·ecmascript
li_Michael_li1 小时前
Vue 3 模板引用(Template Refs)详解与实战示例
前端·javascript·vue.js
excel1 小时前
webpack 核心编译器 十五 节
前端
excel1 小时前
webpack 核心编译器 十六 节
前端