1.charles安装
下载charles4.0.1破解版,官方下载只能试用30天。网盘下载地址:https://pan.baidu.com/s/1eSwwvo2。(里面包括.dmg(用于安装)和.jar文件(用于破解))破解方法:在Finder的应用程序中找到Charles.app,右键选择“显示包内容”,之后进入Contents文件夹,接着进入Java文件夹,用破解文件(也就是jar文件)替换charles.jar文件。到此就破解了。
2.安装证书
如果你需要截取分析 Https 协议相关的内容。那么需要安装 Charles 的 CA 证书。具体步骤如下。我们需要在 Mac 电脑上安装证书。点击 Charles 的顶部菜单,选择 “Help” –> “SSL Proxying” –> “Install Charles Root Certificate”,然后输入系统的帐号密码,即可在 KeyChain 看到添加好的证书。如下图:
3.设置charles
要截取 iPhone 上的网络请求,我们首先需要将 Charles 的代理功能打开。在 Charles 的菜单栏上选择 “Proxy”–>“Proxy Settings”,填入代理端口 8888,并且勾上 “Enable transparent HTTP proxying” 就完成了在 Charles 上的设置。如下图:
4.iPhone上面的设置。
首先我们需要获取 Charles 运行所在电脑的 IP 地址,Charles 的顶部菜单的 “Help”–>“Local IP Address”,即可在弹出的对话框中看到 IP 地址,如下图:
在 iPhone 的 “ 设置 ”–>“ 无线局域网 ” 中,可以看到当前连接的 wifi 名,通过点击右边的详情键,可以看到当前连接上的 wifi 的详细信息,包括 IP 地址,子网掩码等信息。在其最底部有“HTTP 代理”一项,我们将其切换成手动,然后填上 Charles 运行所在的电脑的 IP,以及端口号 8888(若此时设置代理无效,则先忽略此网络,重新连接后再设置代理即可)。如下图:
5.安装手机证书
如果我们需要在 iOS 或 Android 机器上截取 Https 协议的通讯内容,还需要在手机上安装相应的证书。点击 Charles 的顶部菜单,选择 “Help” –> “SSL Proxying” –> “Install Charles Root Certificate on a Mobile Device or Remote Browser”,然后就可以看到 Charles 弹出的简单的安装教程。
在手机safari上面输入:chls.pro/ssl,安装文件。
通常这样就可以进行网络抓包了。但是这只是仅仅针对http请求。如果要抓取https请求,则还需要做第6步。我们先来看看没有做第6步的情况。对一个接口打上Breakpoints。在进行网络截取的时候会发现一直报错。
报Failed to parse headers:EOF reading HTTP headers,原因是不能截取https的网络请求。
加上第6步即可。此时如果碰到抓取到的https请求接口一直显示红色X<unknown>,则需要进行如下操作:设置->通用->关于本机->证书信任设置->针对根证书启用完全信任下的Charles Proxy CA开关打开。
6.勾选https的截取功能
Charles 默认也并不截取 Https 网络通讯的信息,如果你想对截取某个网站上的所有 HTTPS 网络请求,可以在该请求上右击,选择 SSL proxy,如下图:
这样,对于该 Host 的所有 SSL 请求可以被截取到了。当截取到网络请求红色箭头向下的时候即可改变网络接口返回的内容。比如此时可以将code码改为000001,data内容也可以做修改。