使用 Charles 获取 https 的数据

我使用的 Charles 版本是 3.11.2,获取下载地址可自行百度,我下面要说的是使用 Charles 获取 https 的数据。

1. 配置 Charles 根证书

首先打开 Charles:

使用 Charles 获取 https 的数据_第1张图片
Charles 启动界面
使用 Charles 获取 https 的数据_第2张图片
主界面

然后如下图操作:

使用 Charles 获取 https 的数据_第3张图片
Paste_Image.png

之后会弹出钥匙串,如果不弹出,请自行打开钥匙串,如下图:

使用 Charles 获取 https 的数据_第4张图片
钥匙串

系统默认是不信任 Charles 的证书的,此时对证书右键,在弹出的下拉菜单中选择『显示简介』,点击使用此证书时,把使用系统默认改为始终信任,如下图:

使用 Charles 获取 https 的数据_第5张图片
显示简介

然后关闭,就会发现 charles 的证书已经被信任了,如下图:

使用 Charles 获取 https 的数据_第6张图片
证书被信任

2. 在移动设备上配置证书

如下图,选择在移动设备上安装 Charles 根证书:

使用 Charles 获取 https 的数据_第7张图片
Paste_Image.png

会弹出一个提示框,如下图:

使用 Charles 获取 https 的数据_第8张图片
提示框

进入手机设置界面:

使用 Charles 获取 https 的数据_第9张图片
手机局域网设置

然后打开手机的浏览器,输入
charlesproxy.com/getssl 会弹出如下界面:

使用 Charles 获取 https 的数据_第10张图片
安装证书

点击安装即可,如果出现的不是这个界面,那么把链接换成
https://www.charlesproxy.com/documentation/additional/legacy-ssl-proxying/,点击安装 itself 后面的 here 就可以了。

这里以为例...,

使用 Charles 获取 https 的数据_第11张图片
发现页面接口数据

此时还是获取不到 https 的数据,各位童鞋不要着急,下面还有操作,接着还是进入 Charles ,如下图操作:

使用 Charles 获取 https 的数据_第12张图片
SSL Proxy Setting

如下图,勾选Enable SSL Proxying,点击添加,弹出下面的对话框,Host 表示你要抓取的 ip 地址或是链接,Port 填写 443 即可:

使用 Charles 获取 https 的数据_第13张图片
设置

如果还抓不到数据,检查你的手机是不是 iOS 10.3 及以上版本,如果是的话的还需要进入手机设置->通用->关于本机->证书信任设置,如下图,证书选择信任就可以了:


使用 Charles 获取 https 的数据_第14张图片
iOS11

设置完成后,就可以抓取数据啦,如下图:

使用 Charles 获取 https 的数据_第15张图片
抓取数据

如果有问题,欢迎留言。

你可能感兴趣的:(使用 Charles 获取 https 的数据)