前言
在进行APP测试、定位线上问题、模拟手机各种环境时,Charles
是一款不可或缺的工具。本文主要介绍如何在Mac
上使用Charles
对HTTPS
请求进行抓包。以及 iOS 10.3
以及以上系统引起的“SSLHandshake: Received fatal alert: unknown_ca”
问题
步骤一
配置HTTP
代理,这步与抓取HTTP
请求是一样的
Proxy -> Proxy Settings...
Proxy Settings...
端口填入8888
,勾选Enable transparent HTTP proxying
步骤二
配置SSL
代理,点击add
添加需要监视的域名,*
号代表通配符,端口一般都是443
Proxy -> SSL Proxying Settings...
SSL Proxying
Edit Location
步骤三
在手机无线局域网中配置手动代理,输入安装Charles
的电脑网络地址(网络地址可通过Help -> Local IP Address
获取,或者打开网络偏好设置查看)。端口填8888(Charles
中设置的端口)
步骤四
Mac端的根证书安装,安装完成后需要去系统钥匙串中信任该证书
Install Charles Root Certificate
步骤五
在Safri
上打开Charles
的根证书下载地址:chls.pro/ssl
正常的话会出现安装描述文件的页面,按照提示安装。在设置里的描述文件管理中信任它。
在iOS 10.3及以上系统,需要额外去设置 -> 通用 -> 关于本机 -> 证书信任设置
里勾选针对根证书启用完全信任
的选择。
网友评论