Fiddler抓取Android手机网络数据包

 也许你也有疑问,如果开发没有完备的接口文档,我如何知道他API的信息?
 这时我们就得通过一些抓包工具抓取这些API信息。
 常见抓包工具
 HTTP抓包工具:Fiddler、Charles、Firebug、开发者工具等等。。。
 Chrome开发者工具简单演示
 1.打开Chrome 浏览器,按下F12快捷打开Chrome开发者工具
 2.点击Network 标签
 3.勾选 Preserve log选项,确保页面刷新不会把已抓到的请求清空。

一、 Fiddler介绍

      Fiddler是位于客户端和服务器端的HTTP代理,也是目前最常用的HTTP抓包工具之一 。 它能够记录客户端和服务器之间的所有 HTTP请求,可以针对特定的HTTP请求,分析请求数据、设置断点、调试web应用、修改请求的数据,甚至可以修改服务器返回的数据,功能非常强大,是web调试的利器。

Fiddler下载地址:http://www.telerik.com/download/fiddler

Fiddler官方网站:www.fiddler2.com

Fiddler更多介绍:http://www.telerik.com/fiddler

 
工作原理
      Fiddler是以代理WEB服务器的形式工作的,浏览器与服务器之间通过建立TCP连接以HTTP协议进行通信,浏览器默认通过自己发送HTTP请求到服务器,它使用代理地址:127.0.0.1, 端口:8888. 当Fiddler开启会自动设置代理, 退出的时候它会自动注销代理,这样就不会影响别的程序。不过如果Fiddler非正常退出,这时候因为Fiddler没有自动注销,会造成网页无法访问。解决的办法是重新启动下Fiddler。Fiddler支持所有可以设置http代理为127.0.0.1:8888的浏览器和应用程序。
  Fiddler抓取Android手机网络数据包

二、配置Fiddler

下载安装好Fiddler,打开Fiddler的界面如下图2.1所示:

Fiddler抓取Android手机网络数据包

首先,打开Fiddler菜单项Tools->Fiddler Options,点击HTTPS的TAB,选中Decrypt https traffic和Ignore server certificate errors(unsafe)两项,配置Fidder允许监听HTTPS。如下图2.2所示,

Fiddler抓取Android手机网络数据包

然后,配置Fiddler允许远程连接。点击Connections,选中Allow remote computers to connect,默认监听端口为8888,若重新配置,配置好后需要重启Fiddler,如下图2.3所示:

Fiddler抓取Android手机网络数据包

三、配置Android手机

打开CMD命令行,通过命令ipconfig查看Fiddler所在机器的IP地址,本机IP地址为:192.168.2.103,如下图3.1所示:

Fiddler抓取Android手机网络数据包

将手机连接到PC同一局域网的WIFI,并修改该WIFI网络配置,长按WIFI,选择【修改网络】->【显示高级选项】->【手动代理设置】,主机名填写Fiddler所在机器IP(192.168.2.103),端口填写Fiddler端口,默认8888,操作过程依次如下图3.2、3.3、3.4所示:

Fiddler抓取Android手机网络数据包

Fiddler抓取Android手机网络数据包

打开手机浏览器,输入ip:端口号=192.168.2.103:8888,安装证书。

至此可以对Android手机软件进行抓包,分析相关流量数据了。图3.5为易信的流量抓包示意图。

Fiddler抓取Android手机网络数据包

上一篇:Mybatis异常There is no getter for property named 'XXX' in 'class com.xxx.xxx.UserAccountDTO


下一篇:Educational Codeforces Round 8 部分题解