什么是Fiddler?
Fiddler是位于客户端和服务器端的HTTP代理,也是目前最常用的http抓包工具之一 。 它能够记录客户端和服务器之间的所有 HTTP请求,可以针对特定的HTTP请求,分析请求数据、设置断点、调试web应用、修改请求的数据,甚至可以修改服务器返回的数据,功能非常强大,是web调试的利器。
既然是代理,也就是说:客户端的所有请求都要先经过Fiddler,然后转发到相应的服务器,反之,服务器端的所有响应,也都会先经过Fiddler然后发送到客户端,基于这个原因,Fiddler支持所有可以设置http代理为127.0.0.1:8888的浏览器和应用程序。
抓包步骤
第一步 Fiddler Everywhere下载安装
1.1 下载地址并安装
1.2 打开安装后的Fiddler Everywhere,注册
输入信息注册账号
前往邮箱确认
注:如果不在邮箱进行确认,是无法登录注册的账号的
返回Fiddler Everywhere登录
第二步 配置Fiddler Everywhere
2.1 配置支持Https
默认情况下是不支持https的抓包的,需要在这里设置后才能支持
2.2 设置端口号和代理对象
9999是端口号,在设置代理对象时需要设置成与这个一致,它的取值范围是0~65535;
- 设置Act as system proxy on startup时,可以抓取电脑的网络请求;
- 设置Allow remote computers to connect时,可以抓取设置代理对象(比如手机)的网络请求.
2.3 设置代理配置
第三步 配置网络
iPhone 和电脑连接同一个 WIFI。
第四步 手机设置代理
4.1 通过ipconfig命令查看电脑的IP,假如电脑IP为:192.168.1.1
4.2 iPhone 手机打开 “设置 —— 无线局域网”,点击已连接 wifi 后面的小叹号,如图:
4.3 然后滑动到页面最下方,点击“配置代理”,配置代理默认是关闭的。
选择“手动”,然后在 “服务器”输入“电脑的IP”,在 “端口” 输入“9999”。
PS:抓包完成后,将配置代理设置为“关闭”,否则手机可能无法上网。
第五步 安装证书
在 Safair 浏览器中打开链接如:电脑IP:9999,例如“192.168.1.1:9999”。
点击圈出来的链接安装证书
PS:若打不开该网址或待测app报网络连接超时,请关闭电脑防火墙。
只安装还不行,iPhone默认不会开启信任的,需要手动添加一下证书信任。
设置 - 通用 - 关于本机,最下面有个信任证书设置按钮,打开后是下面的页面,将DO_NOT_TRUST_FiddlerRoot这个证书打开,不信任这个证书是抓不到https包的,同样的测试完之后你也可以将他关闭。
到这里,就可以使用fiddler抓包iPhone了。
第六步 连接成功,抓包数据分析
左蓝框部分:
- 拦截请求以及发送请求的区域
- Result请求状态值,200显示请求成功
右蓝框部分: - 用于显示请求和响应以及自动处理请求的区域
- Request请求信息,Response响应信息.