fiddler使用总结
在实习的时候有用到fiddler这个工具。
平时关于fiddler的使用,多用于把文件映射到本地进行修改或开发,抓包这两个功能,今天去学习了一下,发现fiddler的功能远比知道的强大,既然是工具,就得充分地把工具利用起来,提高工作效率。
整理了一些总结的笔记
监控http和https的流量,截获从浏览器或者客户端向服务器发送的http请求
伪造请求发送给服务器
测试网站的性能
解密https的web会话
fiddler就相当于客户端和服务端中间的proxy代理服务器,通过修改浏览器代理服务器的地址而工作
代理模式:
流模式 可实时把服务器数据返回给客户端
缓冲模式 http请求所有的数据准备好后才把数据返回给客户端
使用场景
开发环境host配置
前后端接口调试
线上bug fix 把线上发布文件代理到本地,快速定位线上bug
性能分析和优化
工具栏功能分析
1.小气泡:给fiddler捕抓到的会话增加备注
2.replay: 回放请求,点击一个http请求,点击replay,会对此请求进行一次回放
3.清空x :清空监控面板,其筛选功能可选择性的清空
4.Go:在请求的断点时让这个断点继续往下走
question:如何给请求打断点?
answer:
有点像平时调试代码的debugger功能
5.Stream:切换模式
6.Decode: 把http的请求解压出来
7.keep:保持会话 默认是保持all的,但是会话越多,fiddler占用机器的内存越大
8.靶心:过滤请求,比如说只想看到chrome的请求,按住靶心,打开chrome浏览器,选择chrome,此时在其他浏览器上的请求都不会被捕获到,非常实用
9.find:查找功能,选择要查找的,并可设置返回的结果显示为特定的颜色
10.save:保存当前捕获到的所有对话,下次打开fiddler时想重新获得上次捕获的,只需在file里打开recent archive就ok了
11.camera:保存截图
12.clock:计时工具
13.Browse:快速打开浏览器
14.clear cache:清除浏览器缓存
15.TextWizard : url编码/解码
16.Tearoff :浮窗右边的面板
状态栏的使用
1.控制台 :即黑色区域,查看更多其他命令行的使用可在控制台输入‘help’命令
2.capturing :控制fiddler停止/启动工作
3.过滤会话的浏览器来源
监控面板的使用
1.statistics:数据统计
里面有一些性能指标 详见actual performance
关注其中的RTT数据(往返时间,请求从发送出去到返回数据的时间,衡量一个请求的性能的重要数据指标)
下方的show chart按钮是把上面的数据做一个可视化处理
2.inspectors:对请求解包
对请求进行解析,如果是通过表单请求,可在webforms中查看发送的字段之类等等详细的信息
3.autoresponder
就是我最常用的文件代理啦哈哈哈
4.composer
前后端接口联调(免去使用假数据什么鬼的)
选择一个请求,把请求拖进composer,然后请求的所有参数就都暴露出来了,可以通过直接修改请求的参数,按execute,伪造一个请求,重新向服务器发送请求,这样就可以在不写js代码的情况下,和服务端调试
如果把请求从get改为post,可在下面的request body里面书写请求内容
5.timeline
网站性能分析
单独看一个请求的timeline是没有意义的,把一个网站的所有请求选中,再看timeline
host配置
开发中常有更改网站host的需求,我们平时一些静态文件如css,js,html文件都会放在本地服务器中,或者是非线上域名的服务器 server ip,把host从线上服务器指向本地
在tools-hosts**
输入ip + 域名 然后再replay一下此请求
文件代理
exact 精准匹配 regex 模糊匹配
用fiddler实现网络限速
测试网页在网速较低的情况下的表现