Fiddler--简介
Fiddler是一个http抓包工具,不管用什么浏览器,甚至不一定是浏览器,可以是Java程序、.Net程序……它都可以胜任,用它,我能够记录客户端和服务器之间的所有 HTTP请求,可以针对特定的HTTP请求,分析请求数据、设置断点、调试web应用、修改请求的数据,甚至可以修改服务器返回的数据。
它是在web server 和 client 之间搭了一层 proxy,所有的请求都会经过它,如下图所示:
Fiddler在web client 与 server 之间充当了一个请求及响应的代理角色,它会在本地建立一个默认代理服务,端口默认为8888,为此我们访问一下此端口,可见如下效果:
当启用 Fiddler时,IE会设定为使用系统代理,代理地址:127.0.0.1, 端口:8888,因此如果你的浏览器在开启Fiddler之后没有设置相应的代理,则Fiddler是无法捕获到HTTP请求的(FireFox需要手动设置代理,chrome浏览器我使SwitchyOmega)。如下是启动Fiddler之后,IE浏览器的代理设置:
当Fiddler退出的时候它会自动注销,这样就不会影响别的程序。不过如果Fiddler非正常退出,这时候因为Fiddler没有自动注销,会造成网页无法访问。解决的办法是重新启动下Fiddler或者去把代理设置去掉。
3、认识Fiddler
借用网上博客图片,我们可以看到几个区域:
(1)监听开关 - 只有两种状态,capturing表示捕捉状态。
(2)监听类型 - 四种状态分别对应 监听所有请求;监听浏览器请求,监听非浏览器请求,和全部隐藏(Hide All)
(3)命令行 - 允许你直接输入命令,详细官方文档介绍 http://docs.telerik.com/fiddler/KnowledgeBase/QuickExec,常见得命令有:
-
help 打开官方的使用页面介绍,所有的命令都会列出来
-
cls 清屏 (Ctrl+x 也可以清屏)
-
select 选择会话的命令
-
?.jpg 用来选择jpg后缀的图片的会话
-
bpu 截获request
(4)请求会话列表 ,会话第一列的图标含义