fiddler是一种web调试工具,能记录所有客户端和服务器的http、https请求,可以监视、设置断点、修改输入和输出的数据,还能用.net语言进行拓展。学习http协议和fiddler用法是相辅相成的。类似工具有httpwatch,firebug,wireshark等。
一、工作原理
fiddler是以代理web服务器的形式工作的,IP:127.0.0.1,port:8888.退出的时候会自动注销,从而不会影响其他程序。(fiddler非正常退出时,造成了网页无法访问,尝试下重启fiddler)
二、界面及功能
几个大的版块是这样的:
检查(也就是英文版的inspectors):底下可以选择查看的形式。表单可以较为直观的看body值、querer string值;原始可以查看完整消息结构……
统计栏:通过陈列出所有的http通信量,可以显示哪些文件生成了当前的页面。还可以同时选中几个请求查看。选择第一个和最后一个请求,可看出整个页面加载消耗时间的情况,从而方便对页面的访问速度进行优化。
Quickexec:也就是图中的命令行工具。常见命令有:
help 打开官方的使用页面介绍
cls 清屏(Ctrl+x)
select 选择会话
?.png 选择后缀是png的图片
bpu 截获请求
……
设置断点:可以修改请求信息或响应信息。
修改请求——host,cookie或表单数据等,都能改。如图选断点的位置在请求之前(同理响应之后就是设置响应的断点),再选已禁用,就能关闭断点。设置完断点之后就能对数据进行修改了。第二种设置方式是在命令行输入:bpu www.baidu.com (这种方法只会中断www.baidu.com),再次输入bpu就能恢复了。设置响应对应的命令是bpafter。
应用——比如登录页面前设置请求前断点,输入了错误的用户名和密码,点登录。fiddler会中断该会话。在表单里修改数据,输入正确的用户名和密码,再执行,就能看到页面登录成功了。
原理示意图:
自动响应:可以人为从本地返回文件,而不用将请求发送到服务器上。
Fiddler 的AutoResponder tab允许你从本地返回文件,而不用将http request 发送到服务器上。
过滤器:可以根据需要来设置过滤条件。看图说话。
会话比较:选中两个会话,右键比较。需要安装个windiff。
文本编码:用于编码和解码。
Ctrl+f:输入关键字,查找会话,结果默认黄色显示
会话保存:文件 --> 保存选项
解码:有时候响应里HTML是乱码的(被压缩了),这时候点工具栏里的解码,或者点击给出的提示信息框也能解决
…………………………………………………………
三、常见应用场景
1.分析页面的性能
2.分析http请求或响应数据
3.设置断点,调试线上错误
4.伪造数据请求,调试错误接口
功能很多很强大,实际工作中(需要)用到什么了,再详细了解好了。