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