好久没有用 Charles 抓包移动端的应用了,今天刚好因为开发需要,所以用 Charles 试了一下。看了一下网上的文章,才顺利抓包成功。特此记录一下。
第一步配置 Mac 端的 Charles
- 点击 proxy -> SSL Proxying settings
- 勾选 Enable SSL Proxying
- 点击 Add 添加 host,post。如果抓所有的包,host 输入 *
如下图
第二步 给 Mac 安装证书
- 点击 help -> SSL Proxying -> Install Charles Root Certificate
- 打开Mac的钥匙串访问找到下面的证书
- 右键 显示简介,点击 信任,选择始终信任,如下图
第三步 配置手机
手机和电脑要连接相同的 wifi
- 找到对应的 wifi,点击 i 标志,选择 配置代理-> 手动
- 服务器输入电脑的 ip,端口输入 Charles 里配置的端口
查看电脑的 ip 方法如下
点击 Charles 的 help -> Local IP Address
查看 Charles 上配置的端口方法如下
点击 Charles 的 Proxy -> Proxy Settings
Port 的 即为要的端口号,顺便记得勾选Enable transparent HTTP proxying 虽然我也没有测试,不勾选会咋样
第四步 手机安装证书
- Safari 打开,输入 chls.pro/ssl 会下载一个证书。
- 打开设置,安装证书
- 打开设置-通用-关于本机-证书信任设置-打开 Charles 证书的信任开关
经过上述的设置就可以利用 Charles 抓包手机了