说明:
1. 本人电脑是黑苹果,系统是OS X EI Capitan,版本10.11.5
2. Charles版本是4.1.1
一. 实现步骤
下载和安装Charles
下载和安装电脑的Charles证书,并设置为始终信任,默认是不信任
从Charles上获取需要在iPhone上安装的 证书网址
在iPhone上下载和安装证书,最关键一步是要对证书进行 信任 设置
在Charles上进行 SSL代理设置
在iPhone上设置 HTTP代理
在iPhone上打开并浏览要获取接口的APP,APP的接口信息和返回的数据都会在Charles上显示
二. 具体实现
1.下载和安装Charles软件。安装前要先安装Java运行环境,因为Charles是Java写的。Charles是收费软件,试用期是30天,需要破解也很简单,只要找到对应版本的破解文件charles.jar进行文件替换即可。具体的安装和破解步骤就不写了,太简单。下载安装包和破解文件
2.下载和安装电脑的Charles证书,并设置信任,默认是不信任的,具体操作如下图
3.从Charles上获取需要在iPhone上安装的 证书网址 。点击菜单栏中的Help找到下载证书的网址,如下图
提示:要同时下载手机版和电脑版的Charles证书才能使用 Charles 抓取iPhone上的数据接口
4.在iPhone上下载和安装证书。在浏览器中输入刚才获取的Charles证书的网址,我刚才获取到的是 chls.pro/ssl,不同的版本可能网址不一样。安装证书后可以在手机的 设置 –> 通用 –> 描述文件 里查看刚刚安装的证书,如下图
安装完证书后必须在手机上设置对证书的信任,在抓包时才能正确的获取APP数据接口,否则即使成功安装了也还是获取不到,有很多人写的博客都没有提到这个关键步骤!设置信任方法: 设置 –> 通用 –> 关于本机 –> 证书信任设置 ,如下图
5.在Charles上进行 SSL代理设置,步骤如下图
6.在iPhone上设置 HTTP代理 。点击已经连接的WIFI,进入设置界面,如下图
提示:代理的IP地址必须是MAC OS系统当下的IP地址,端口号默认是8888
7.在iPhone上打开并浏览要获取接口的APP,APP的接口信息和返回的数据都会在Charles上显示。下面是在浏览”界面APP“,获取数据如图