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

相关推荐
2501_9159184121 小时前
Web 前端可视化开发工具对比 低代码平台、可视化搭建工具、前端可视化编辑器与在线可视化开发环境的实战分析
前端·低代码·ios·小程序·uni-app·编辑器·iphone
程序员的世界你不懂1 天前
【Flask】测试平台开发,新增说明书编写和展示功能 第二十三篇
java·前端·数据库
索迪迈科技1 天前
网络请求库——Axios库深度解析
前端·网络·vue.js·北京百思可瑞教育·百思可瑞教育
gnip1 天前
JavaScript二叉树相关概念
前端
attitude.x1 天前
PyTorch 动态图的灵活性与实用技巧
前端·人工智能·深度学习
β添砖java1 天前
CSS3核心技术
前端·css·css3
grrrr_11 天前
【工具类】Nuclei YAML POC 编写以及批量检测
网络·安全·web安全
空山新雨(大队长)1 天前
HTML第八课:HTML4和HTML5的区别
前端·html·html5
猫头虎-前端技术1 天前
浏览器兼容性问题全解:CSS 前缀、Grid/Flex 布局兼容方案与跨浏览器调试技巧
前端·css·node.js·bootstrap·ecmascript·css3·媒体