fiddler抓包工具
一、fiddler下载安装
Fiddler Everywhere是可以运行在任何浏览器,任何系统、跨平台(Windows、Mac、Linux)的一款Web调试代理工具。它记录了计算机和Internet之间的所有HTTP(S)通信,可以检查和编辑通信,并Mock请求以及修改响应返回的能力
下载地址:https://www.telerik.com/fiddler

默认安装
二、抓取网络浏览器请求
Chrome/IE浏览器使用的都是系统代理设置,在chrome浏览器的设置中搜索代理,可以看到

手动配置浏览器代理:打开chrome/IE浏览器,选择设置->Internet选项->连接->局域网设置->代理服务器 设置为 127.0.0.1:8888





Tools->Options->Actions->Open Windows Certificate Manger查看已安装的证书

证书如果过期了则重新生成并安装新证书:Reset All Certificates,然后重新Trust Root Certificate

抓包请求结果有提示:Response body is encoded.Click to decode.解决办法:

浏览器请求https://ww.cnblogs.com,抓包结果:

Statistics:数据统计面板,性能分析
Inspectors:查看请求与响应
Filters:过滤器只抓取某些网站的请求
Actions:
-
- Run Filterset now运行过滤器
- Load Filterset导入过滤规则
- Save Filterset保存过滤器到本地

三、抓取手机端请求
确保手机和Fiddler在同一局域网。
在 Fiddler 中找到port端口(Tools → Options → Connections)
在手机上设置 Wi-Fi 代理,填写:
代理 IP:Fiddler 运行的 PC 的 IP
端口:8888
在手机浏览器访问 http://<Fiddler_IP>:8888 下载证书FiddlerRoot.cer并安装。

四、弱网测试
1. 手动设置设置上行,下行速率,模拟网路速度的原理,每上传/下载1KB 要delay 多久…

在Fiddler ScriptEditor中搜索关键字:m_SimulateModem

当修改好后,点击左上角File-->Save进行保存即可

2. 启动规则
Rules → Performances →勾选 Simulate Modem Speeds
这时打开网站就会比较慢,说明限速了。

五、mock返回值
使用其中的AutoResponder功能实现mock测试。
篡改返回的数据,返回的数据意味着我们关心页面上的显示(比如:页面上显示这个东西,返回的结果发生改变之后,页面是否正常显示,页面处理情况)
- AutoResponder类似于Charles的MapLocal功能,但是更强大,因为可以用正则去匹配;
- 平时我们可能需要观察某个请求返回特定的响应数据,但是该请求可能每次都会带有唯一的请求参数(如:时间戳),那就可以通过AutoResponder的正则去匹配该请求,无需url里关心唯一的请求参数,而且也可以根据Header的属性去匹配url;
- 甚至Fiddler还提供了多种response,不一定要自定义一个response。
1. 参数设置
在AutoResponder中进行如下设置:
勾选Enable rules(执行匹配规则,就是用来启动AutoResponder)
勾选unmatched requests passthrough(不匹配请求失败的url)
点击Add rule(添加匹配规则)

2. 使用
将左侧监控面板中抓取到的请求,拖到Autoresponder中,勾选If request matches中的请求复选框
选中该请求->右键->Edit Response->Textview,修改服务端返回的内容(建议格式化之后再做修改,返回的内容结构会更清晰),点击【save】按钮
这时客户端重新发起该请求的时候,就会返回修改的内容。

3. 规则

请求框:默认EXACT精准匹配,完全相同的请求地址才会被拦截,该编辑框支持正则表达式进行模糊匹配,如regex:(?insx).*\.(css|js|PHP)$ 表示匹配所有以css,js,php结尾的请求url
Test:正则较为复杂时,可以用Test去测试自己写的正则能否匹配上对应url。绿色表示匹配成功,红色表示匹配失败
regex正则表达式匹配:
.+ 一个或多个
.* 零个或多个
(?insx)不区分大小写
\ 转义
匹配规则:regex:(?inx)^https://.+\.gif$ 简单理解:https开头,.gif结尾的url
响应:可选择服务器返回不同的code值或返回一个本地文件;Fiddler支持的拦截重定向的方式:


六、Composer构造器
Fiddler Composer的功能就是用来创建HTTP Request 然后发送。你可以自定义一个Request, 也可以手写一个Request,你甚至可以在Web会话列表中拖拽一个已有的Request,来创建一个新的HTTP Request。
简单来说,Composer可以用来接口测试,支持前后端接口连调,支持多种类型的请求,如GET、POST。其中,POST请求的参数写在request body中、一般协议选择HTTP1.1。


浙公网安备 33010602011771号