Http调试工具-Fiddler使用指引
Fiddler是什么?
Fiddler是一个http调试代理,它能够记录并检查所有你的电脑和互联网之间的http通讯,设置断点,查看Fiddle 所有的"进出"的数据(指cookie,html,js,css等文件,这些都可以让你胡乱修改的意思)。 Fiddler 要比其他的网络调试器要更加简单,因为它不仅仅暴露http通讯还提供了一个用户友好的格式。
Fiddler能做什么?
- Capture all HTTP(s) traffic 查看http请求
- Deep dive into session metrics 深度分析http session
- Filter captured traffic 过滤http请求
- Archive and playback recorded traffic 录制、播放http请求
- Web debugging... web调试,等等
详情见官网介绍:
http://fiddler2.com/Features/http-https-traffic-recording
从哪里下载?
官网下载: http://fiddler2.com/docs/default-source/public-downloads/fiddler4setup.exe?sfvrsn=30
hao123下载: http://softdownload.hao123.com/hao123-soft-online-bcs/soft/F/2013-10-22_fiddler4setup.exe
局域网下载:
\\10.10.76.79\smcuser\常用软件
windows直接访问: \\10.10.76.79
mac访问:smb://10.10.76.79
账号:smcuser
密码:smcuser#2012
安装:
Fiddler是基于c#开发的,最新版本是4.4,运行Fidder4.4需要.net 4环境,.net 4的下载地址是: http://download.microsoft.com/download/9/5/A/95A9616B-7A37-4AF6-BC36-D6EA96C8DAAE/dotNetFx40_Full_x86_x64.exe
初次使用设置:
打开Fiddler, Tools-> Fiddler Options 。 (配置完后记得要重启Fiddler).
选中"Allow remote computers to connect". 是允许别的机器(设备)把HTTP/HTTPS请求发送到Fiddler上来,我们要勾上这个选项,以便让手机通过本机的8888端口连接。
Monitor all connections,是监听所有请求,包括本机和连接到Fiddler代理端口的设备的请求。(一般我们不需要监听本机的,所以不勾)
选中"Decrpt HTTPS traffic", Fiddler就可以截获HTTPS请求,如果没有抓取https请求的需求,不需要修改这个设置。
让手机连接到Fiddler:
其实就是通过Fiddler的代理端口访问网络。
Android:
(目前只有Android4.0及以上版本才支持,低版本需要单独安装代理软件)
打开WLAN设置,长按SOHU.COM连接:
修改网络:
勾中"显示高级选项",按照上图填写,主机名是本机的IP地址,端口是Fiddler设置的http代理端口,默认是8888
注意的是,有些Andorid机器修改后,不会立即生效。可先切到另一个网络(如SOHU-Guest)再切换回SOHU.COM
IOS:
略。
或参考:
http://blog.csdn.net/jiguanghoverli/article/details/9213515
开始使用:
连接上以后,在Fiddler主界面上看到所有来自手机的请求了:
设置过滤规则:
如上图,全部请求太多了,我只想看搜狐新闻客户端的,怎么办?
在界面右边,有一个Filters选项卡,点击它,如下图:
按上图选择,填写我们正式和测试服的host: 221.179.173.197; *.k.sohu.com;
查找指定的URL:
有两种方法:
1. 查找, 按ctrl + F
2. 在Filters中设置过滤规则,并执行(过滤只不满足条件的记录将清除)
例如,我只想看全部article.go接口的请求,则按上图填写,然后点击:
Run Filterset now.
查看http请求和统计结果
双击一个请求,即可查看这个请求的详情。大家自己看吧。
有一个统计功能比较炫:(ctrl + A选中全部请求)
上面全部只是介绍了一下皮毛,更多好用功能请大家自己探索,互相交流。
重定向:
1. AutoResponder
2. 选中Enable automatic responses
3. 点Import导入文件
4. 可以通过默认Url或者通过Rule Editor来修改请求匹配规则
断点:
1. Rules - Automatic Breakpoints - Before Requests/After Response。
2.加断点后可以修改请求头响应头等。
【模拟低网速】
1.Rules - performance - simlate modem speed
附:chrome 的JSON 插件
由于我们的接口主要采用json格式返回数据,推荐几个chrome下的JSON查看工具:
JSON Prettifier 2.6 (推荐安装,自动,完美格式,支持以表格的方式显示JSON数据)
安装地址:
https://chrome.google.com/webstore/detail/json-prettifier/kccpfgilgmgbipamhohknpokhibinhhj
安装要后配置一个host 220.181.11.134 www.betadeli.com
(由于这个插件加载图标要请求一个国外的站点,比较慢,故配置一个内网的host替换这个)
效果图示:
结构化显示:
支持缩起,并显示数组长度:
以表格方式显示:
JSONP Viewer 1.1.6 (手动,支持JSONP格式化显示)
安装地址:
https://chrome.google.com/webstore/detail/jsonp-viewer/mijkjfpdiidomhagijpedgaeekkadlgp