偶然听到Charles还能抓取HTTPS的数据,甚是欣喜,可见我见识有多么短了,😓。然后网上找了一批方法,大致都是一样的,简单点罗列一下。
证书下载安装
我用的是mac系统,Charles 的 V4.0.1的版本,在
Help
下的SSL Proxying
的有各种证书,电脑,iOS模拟器,iOS真机
- 电脑证书安装
证书安装的时候Mac会弹出钥匙串,然后右击添加信任
-
模拟器安装
必要的点就是最好先打开Charles,然后打开模拟器,最后在下载证书,然后在模拟器通用->关于本机->证书信任设置
开关显示打开就证明导入成功了
-
真机证书安装【大坑就在这里】
-
通用方法:点击下载以后,会弹框
- 手机的Safari访问
chls.pro/ssl
进行安装【此处要保证手机已经和代理在统一网络下】 - 大坑:在10.2之前的系统,手机的证书就算安装完毕了,但是10.3还要这样进行设置,顺序为
设置->通用->关于本机->证书信任设置
,开关是没有打开的,需要手动打开
-
Charles设置
- 设置主机和端口
*如果url为 https://www.xxx.com:443:xxx,那主机就是www.xxx.com
,端口号一般为443,
- OK以后勾选
Enable SSL Proxying
之后就基本OK了
- OK以后勾选
由此联想
由此可见HTTPS的安全性也没有想想的那么高,故在使用HTTPS的时候,最好是客户端和服务端采用双向认证