1. 介绍
Fiddler是http协议调试代理工具,它能够记录并检查所有你的电脑和互联网之间的http通讯,设置断点,查看所有的进出Fiddler的数据(指cookie,html,js,css等文件)。
功能:1)监控浏览器所有的HTTP/HTTPS流量;2)查看、分析请求内容细节;3)伪造客户端请求和服务器响应;4)测试网站的性能;5)解密HTTPS的web会话;6)全局、局部断点功能;7)第三方插件
2. 基础操作
抓取请求,删除请求,过滤请求
抓取请求:直接打开需要抓取对象页面
删除请求:1)点击×按钮进行删除;2)在底部黑框中输入cls或者clear进行删除
过滤请求:1)点击Filters;2)选择use filters;3)点击show only the following hosts;4)在下方输入地址,如果有多个用英文分号进行分割
3. Fiddler抓取https请求
步骤:点击Tools--选择Options--选择https--勾选capture https connects--勾选decrypt https traffic
4. Fiddler典型应用
1)web网页、手机APP抓包;2)修改服务请求与响应;3)模拟弱网测试;4)前端性能分析及优化
5. 抓包的应用场景
通过抓包工具截取观察网站的请求信息,更深入了解网站
通过抓包工具截取,观察网站的请求与返回信息,帮助进行BUG定位与描述
通过抓包工具拦截修改请求信息,绕过界面的限制,测试服务器端功能
辅助定位BUG的操作流程:1)web页面,手机app抓包;2)检查接口地址是否有误;3)检查响应状态是否存在异常;4)检查接口传递参数;5)检查接口返回数据
6. 构建模拟测试场景
1)模拟发送请求,进行接口测试;2)Mock接口返回数据,测试程序
模拟发送请求操作流程:1)设置请求方法,请求地址,协议;2)设置请求header;3)设置请求boby;4)发送请求;5)查看响应
模拟返回响应数据
7. Fiddler模拟弱网环境测试
选择Rules--移动到Performance--点击Simulate Modem Speeds
修改网络上下行速度:选择Rules--点击Customize Rules--找到 m_SimulateModem设置上下行速度。
注:每次更改完上下行速度之后,都要重新点击Simulate Modem Speeds
8. 前端性能分析
选中开始和结束的网页,点击Statistics可以画出饼状图,并给出各项的响应时间,点击Timeline可以画出时间轴
9. B/S架构
browser-sever架构,编写程序部署到web服务器,web服务器运行在服务器上,绑定ip地址并监听某端口,接收和处理http请求,客户通过http协议获取服务器上的网页、文档等资源
10. HTTP定义
超文本传输协议(Hyper Text Transfer Protocol),用于从万维网服务器传输超文本到本地浏览器的传输协议,HTTP协议是基于TCP的应用层协议,它不关心数据传输的细节,主要用来规定客户端和服务端的数据传输格式,最初是用来向客户端传输HTML页面的内容,默认端口80,HHTP是基于请求与响应模式的、无状态的、应用层的协议。
HTTP请求报文组成:请求行、请求头、空一行、请求正文
请求方法:get(请求资源)、post(提交资源)、head(获取响应头)、put(替换资源)、delete(删除资源)、options(运行客户端查看服务器性能)、trace(回显服务器收到的请求,用于测试或诊断)
请求头:请求头主要的作用是携带一些必要的信息,用于告诉服务器输入的数据格式或者后续的操作等。
11. 断点测试
设置Rules--选择automatic breakpoint(响应前断点:before response;响应后断点:after response)
响应前断点就相当于,客户端发送信息给服务器,但是中途被拦截了,fiddler可以将拦截的信息进行修改并发给服务器,观察返回值
响应后断点就相当于,服务器给客户端发送响应反馈,但是中途被拦截了,fiddler可以修改返回的信息并发给客户端。
12. 手机抓包
1)点击tools--options--connections;2)勾选allow remote computers to connect;3)重启Fiddler;4)打开浏览器访问http://fiddler所在电脑ip:端口号,如果正确连接会返回fiddler echo service
android抓包:
1)打开设置--WLAN--连接上的WLAN设置
2)点击代理--手动,设置为fiddler所在主机的ip和端口号
3)访问浏览器http://ip:端口号
4)点击fiddlerroot.cer进行安装
5)打开设置--更多设置--系统安全--加密与凭据--从存储设备安装下载好的fiddlerroot.cer
注:测试完毕,记得关闭代理,不然手机无法上网
ios抓包:
1)点击设置--无线局域网--选中wifi后面的!
2)点击配置代理--手动--填上fiddler所在主机ip和端口号
3)点击存储,保存代理设置
4)对fiddlerroot.cer进行安装
5)安装成功之后,在通用--关于本机--证书信任配置中,信任fiddler证书
13. Willow插件
该插件可以统计数据包、修改Host、请求重定向、编码转换、低网速模拟:慢速网络模拟可视化、断点调试、过滤HTTP请求等功能。
可以将其当作tools--hosts或者AutoResponder的功能加强版