1、Fiddler定义
Fiddler是一个http协议调试代理工具,通过改写HTTP代理,让数据从它那通过,来监控本地计算机和Internet之间所有的HTTP通讯。对HTTP请求,Fiddler可以分析请求数据、设置断点、调试WEB应用、修改请求的数据,修改服务器返回的数据,是web调试的利器。
Fiddler作为系统代理,当启用Fiddler时,IE的proxy设定会变成127.0.0.1:8888,退出时会自动注销。(有遇到过,Fiddler异常关闭,来不及注销代理,导致电脑重开后,系统访问不正常,只需重启Fiddler即可)。浏览器,如Firefox是没有启用代理的,需要手动配置http代理:工具->选项->高级->网络->设置,如下图配置后,Fiddler就可以抓到Firefox的HTTP请求了。
2、下载安装Fiddler
下载地址:http://jingyan.baidu.com/article/5d6edee221f0b399ebdeec7f.html
抓包示例:http://jingyan.baidu.com/article/03b2f78c7b6bb05ea237aed2.html
3、Fiddler功能说明
1)菜单栏:捕获http请求,停止捕获,保存http请求,载入本地session,设置捕获规则等功能
2)工具栏:Fiddler针对当前view的操作(暂停、清楚session,decode模式、清除缓存等等)
3)Web session面板:Fiddler抓取到的每条http请求(每一条称为一个session),主要包含了请求的url、协议、状态码、body等信息
4)详情和数据统计面板:针对每条请求http请求的具体统计和数据包分析。如发送/接收字节数、时间等。Inspectors面板,提供headers、textview、hexview、raw等多种方式查看session的请求报文。Composer面板,可以模拟向相应的服务器发送数据的过程,可以粘贴一次请求的raw http headers达到模拟请求的目的。
Fiddler标签,则可以设置Fiddler的规律规则。如过滤内网http请求而只抓取internet的http请求,或过滤相应域名的http请求;可以过滤特定http状态码的请求,可以过滤特定请求类型的http请求,可以过滤请求报文大于或小于指定大小byte的请求
5)QuitExec命令行,可以直接输入命令,回车执行: help 查看所有命令的使用;?somtext 搜索,高亮显示 ;cls 清屏; 等等
6)设置断点修改Request:可构造请求数据,图片表单的限制。打了断点后,可在Inspections中修改url再发送请求
设置路径:1、Rules->Automatic Breakpoint ->BeforeRequests(这种方法会中断所有的会话);2、命令行输入bpu www.baidu.com (这种方法只会中断www.baidu.com),再输bpu消除
7)设置断点修改response:1、Rules->Automatic Breakpoint -> AfterRequests;2、bpuafterwww.baidu.com 消除命令:bpuafter
8)创建AutoResponder规则:Fiddler的AutoResponder tab允许你从本地返回文件,而不用将http request 发送到服务器上
URI matches,可使用正则表达式做匹配
9)Fiddler的script系统
首先先安装SyntaxView插件,Inspectorstab->Get SyntaxView tab->Download and Install SyntaxView Now,安装成功后Fiddler就会多了一个Fiddler Script tab
把这段脚本放在OnBeforeRequest(oSession:Session) 方法下,并且点击"Save script"
if (oSession.HostnameIs("www.cnblogs.com")){
oSession["ui-color"] = "red";
}
fiddler使用说明:http://docs.telerik.com/fiddler/Configure-Fiddler/Tasks/ConfigureFiddler