本文基于Fiddler 4版本。
问题:fiddler是什么?
解决方案:你女朋友的闺蜜(HTTP代理)。你就是客户端,女朋友就是服务端。
问题:fiddler的用途?
解决方案:
1、监听http或者https请求。
3、伪造客户端请求和服务端响应。 断点后,AutoResponder和Composer构造请求或响应
4、监测网站的性能。---Statistics
6、全局、局部断点功能
问题:fiddler的应用场景?
解决方案:
1、接口测试
2、线上环境调试 ---将服务端返回来的数据截获并重定向。
3、web性能分析
4、弱网测试
=========================================================================
菜单栏:
1、WinConfig:针对windows应用程序的抓包。
2、小气泡:给请求注释的。# 选择一个session(一个请求),点击气泡。
3、Replay:重发请求。# 选择一个session(一个请求),点击Replay按钮;如果要一个请求重复发送多次请求的话,选择一个session + shift + Replay。
4、X:过滤请求列表,可以过滤图片请求等。
5、GO:类似IDEA 的debug调试工具的下一步。
6、Stream:网络上是以流模式传递,而fiddler默认是缓冲模式(就是fiddler接收服务端的数据后,一次性给你)。
7、Decode:解码。如果有编码问题出现的话。
8、Keep all sessions:设置session的数量,一般不设置。
9、Any Process:可选择一个进程进行抓包。# 鼠标左键按住,拖动到对应程序,例如浏览器。
10、Find:就是Ctrl + F ,查找。
11、Save:保存
12、拍照
13、计时器
14、Browse:可以快速打开一个浏览器。
14、Clear Cache:清除IE缓存
15、文本编码解码转换器:可以将中文或者别的进行BASE64编码等。
16、Tearoff:菜单分离,没啥用。
17、MSDN Search:就好比百度的搜索框,用来在Fiddler论坛查找问题。
=========================================================================
请求列表:
1、# :session的id,序号。
2、Result: 响应状态码
3、 Host: 域名
4、URl: 统一资源定位符
5、Body:响应体大小
6、Caching:缓存
7、Content-Type:内容类型
8、Process:程序名+对应进程ID
9、Comments:注释
10、Custom:自定义列。
=========================================================================
右侧栏:
1、get Started:有个鬼用。
2、Statistics:统计用,性能分析用的。
3、Inspectors:以不同形式显示请求的请求和响应。
4、AutoResponder:自定义响应的地方。# 就好比你女朋友的闺蜜想搞坏你和你女朋友的关系,你女朋友传信息让闺蜜给你,但是闺蜜把你女朋友的话改了下再给你。
5、Composer:自定义请求的地方。# 就好比你女朋友的闺蜜想搞坏你和你女朋友的关系,你传信息让闺蜜给你女朋友,但是闺蜜把你的话改了下给你女朋友。
6、Fiddler Orchestra Beta:Beta测试版本,不使用。
7、FiddlerScrpit:修改脚本的地方,这里可以修改弱网测试的速度。
8、Log:日志
9、Filters:过滤器,就是请求筛选,不满足的请求就不会在请求列表中出现。
10、TimeLine:时间线,米啥用。
=========================================================================
底部栏:
1、QuickExec:类似cmd,通过命令对fiddler进行操作,例如对请求打断点等。
bpu 命令等,自行百度。
=========================================================================
问题:请求如何排序?
解决方案:再次点击下列。
问题:如果请求列很多,如何查找?
解决方案:选择列名,右键,选择Search
问题:高亮重复请求?
解决方案:选择列名,右键,选择Flag
问题:如何添加自定义列?
解决方案:Rules-Customize Rules ,根据官网添加代码。
问题:抓包抓不到?
解决方案:
1、File-Capture Traffic没有勾选。 # 这里是设置fiddler是否抓包。
2、过滤指定包导致。
①比如底部栏的ALL Processes,你想抓浏览器的,但是选择了Non-Browser;
②比如右侧栏Filters,你勾选了Use Filters。
3、客户端-fiddler-服务端 路径的哪一环有问题
① 客户端没有连接上fiddler,例如手机连上wifi后,网络高级配置,选择手动代理,配置主机IP和端口,如果你没改fiddler端口的话就是8888。 主机IP如何快速查看的方法,你可以填写Fiddler工具栏的Online的最后一个地址。
② 客户端就没有发送包,你可以使用其他抓包工具查看。
③ 服务端就没有发送包,你可以使用其他抓包工具查看。
4、证书问题
① 如果你想抓火狐浏览器的包,你需要将Fiddler的证书手动导入到火狐浏览器,谷歌和IE不用证书。
Tools—Options-Https-Actions-Export,然后火狐浏览器安装下。
② 证书有问题或者其他的,Tools—Options-Https-Actions-Reset选择重置证书。
5、Https抓包抓不到?
① 浏览器抓不到: Tools—Options-Https,将Capture Https Connects 和Decrypt Https traffic开启。
② 客户端抓不到:Tools—Options-Https,将Capture Https Connects 和Decrypt Https traffic开启; Connections的 Allow允许远端计算机连接 选项 勾上;证书问题
6、代理问题?
① 如果你的谷歌浏览器已经有代理服务器,比如你安装了谷歌翻墙插件,解决方法你自己找。
问题:如何进行弱网测试,弱网测试速度怎么设置。
解决方案:Rules-Performance-Simulate … 勾选上。# 开启弱网测试,如果不勾选,你设置了速度还是会没有生效的。
菜单栏Rules-Customize-Rules,打开后,修改下方的数字保存就行,一个是上传一个是下载速度限制。
if (m_SimulateModem) {
// Delay sends by 300ms per KB uploaded.
oSession["request-trickle-delay"] = "300";
// Delay receives by 150ms per KB downloaded.
oSession["response-trickle-delay"] = "150";
}