fiddler的介绍和使用

发布时间 2023-06-26 17:23:05作者: 軍子

一、fiddler工作原理

  Fiddler是以代理WEB服务器的形式工作的,浏览器与服务器之间通过建立TCP连接以HTTP协议进行通信,浏览器默认通过自己发送HTTP请求到服务器,它使用代理地址:127.0.0.1, 端口:8888. 当Fiddler开启会自动设置代理, 退出的时候它会自动注销代理,这样就不会影响别的程序。不过如果Fiddler非正常退出,这时候因为Fiddler没有自动注销,会造成网页无法访问。解决的办法是重新启动下Fiddler。

二、fiddler抓包

1.pc端,浏览器导入证书。设置端口等设置

2.手机端,需要和电脑保持同一网络,手机和电脑的ipconfig保持一致,手机端导入证书。

3.访问后fiddler可抓取请求。

三、fiddler过滤

1.打开fiddler>Tools>Fiddler Options>HTTPS>…from remote clients only,勾选这个选项就可以了

…from all processes :抓所有的请求

…from browsers only :只抓浏览器的请求

…from non-browsers only :只抓非浏览器的请求

…from remote clients only:只抓远程客户端请求

四、fiddler断点

1.第一种 before response:这个是打在request请求的时候,未到达服务器之前。

2.第二种: after response:也就是服务器响应之后,在Fiddler将响应传回给客户端之前。

3.全局断点就是中断fiddler捕获的所有请求,先设置下,点击rules-> automatic breakpoint ->before requests;打开网页,看到如下T的标识,说明断点成功;打完断点后,会发现所有的请求都无法发出去,点下Go按钮,就能走下一步了;找到需要修改的请求后,选中该条会话,右侧打开WebFroms,这时候里面的参数都是可以修改的了;修改之后点Run to Completion就能提交了,于是就成功修改了请求参数了;打全局断点的话,是无法正常上网的,需要清除断点:rules-> automatic breakpoint ->disabled

4.单点断点:登录网址;在命令行中输入指令就可以了,请求前断点(before response): bpu+网址,回车;请求登录接口的时候,就会只拦截登录这个接口了,此时可以修改任意请求参数;取消断点,在命令行输入: bpu 回车就可以了。

五、fiddler mock

1.先抓取mock数据的接口,获取接口返回数据。

2.在返回值区域点击【TextView】→【View in Notepad】,TextView中的返回值信息将被记录到本地,修改返回信息。

3.修改fiddler响应规则:选中需要mock的请求,点击【AutoResponder】,点击【Add Rule】,该条请求被加入进来;点击“Rule Editor”中第二行的下拉展示框,选择“Find a file…”,选择上个步骤保存的文件;点击【Save】。

4.再次请求接口,查看响应数据,可以将响应数据已经变成之前修改的数据。

六、弱网测试

1.启动弱网:打开Fiddler→Performance→勾选Simulate Modem Speed,使用默认的弱网参数值。

2.Fiddler→Customize Rules,设置弱网参数值。

如果要模拟2G网络, 上传下载配置如下:

oSession["request-trickle-delay"] = "3000";

oSession["response-trickle-delay"] = "1500";

如果要模拟3G网络,上传下载配置如下:

oSession["request-trickle-delay"] = "20" ;

oSession["response-trickle-delay"] = "10";

3.设置保存。