1. 安装证书
Help->SSL Proxying
依次
Install Charles Root Certificate
Charles Root Certificate in iOS Simulators
在钥匙串中改为 始终信任
2. 是否设置为本机代理
勾选macOS Proxy,则Charles将被设置为系统代理,可以抓取到本机的各种网络请求
如果需要截取的话,在 Chrome 中设置成使用系统的代理服务器设置即可,或直接将代理服务器设置成 127.0.0.1:8888 亦可达到相同效果。
但其实大多数情况下,查看Web端的接口,都直接使用浏览器的控制台.
使用Charles抓包手机上的请求. 为防止在抓包时收到本机网络的干扰, 一般不要勾选.
3. 抓取手机数据
如下:
然后:
手机和电脑连接同一Wifi
获取本机的ip地址
在手机上选择
对应的Wifi->HTTP代理->手动,服务器写电脑的ip,端口填8888
设置好后,Charles会弹出手机请求连接的确认,点击Allow,手机和电脑就建立了连接
4. 抓取手机上的Https请求
1.需要安装证书,模拟中间人攻击
在第一步中, Install Charles Root Certificate,已经安装了Charles的CA证书,而后在手机连接电脑代理情况下,按照弹窗提示,手机浏览器访问chls.pro/ssl,进行手机端证书下载
2.手机安装证书这一步常出问题,以iPhone为例,在设置中搜索证书,进行信任设置
3.回到Charles,进行SSL Proxy设置:
点击Add,在Host中填*,即抓所有的https的包(也可以填写指定ip或域名,只抓取该Host下的https请求), Port填写443.
这是我曾经抓取过的部分https请求:
5. 高阶功能
使用Mapping,修改手机app实际访问的接口地址
参见:
这是我曾经修改的部分https请求:
哈哈哈哈
参考:
原文链接: https://dashen.tech/2015/09/03/Charles使用不完全指南/
版权声明: 转载请注明出处.