前言
- Charles环境:Charles 5.2.1
- 安卓模拟器环境:雷电模拟器9/14,在
CA证书配置环节版本9和14不一样,注意查看 - 安装教程:推荐这位博主的教程
- 该教程用于第三方软件非安卓自带软件接口抓取教程,可以用于APP开发过程中在雷电模拟器中测试,像安卓浏览器这种自带APP无法抓取,因为需要通过命令去修改CA证书提权为系统凭证,不然会提示证书无效
Charles抓取指定域名配置
1、打开include配置页面
路径:Proxy->Recording settings

2、点击添加域名

3、域名配置
如果你是想抓取自己项目的接口,这里有几种配置方式
- 没有域名:
- protocol:没有域名一般是http
- host:项目地址,一般本机或者你的服务器地址,192.168.1.1
- port:端口号,熟知的8080端口
- path:指定路径,比如login,可以不填
- 有域名:
- protocol:https
- host:域名地址,如果是测试环境存在多个的,可以采用
*.公司域名.com这种方式可以匹配到test.baidu.com或者test1.baidu.com - port:端口号,443(注意https端口号为443)
- path:指定路径,比如login,可以不填

4、清空页面重新发起请求查看

例如我请求了https://www.baidu.com网站,并在百度搜索引擎中查询了nh这个关键词,就会抓取所有有关baidu.com的信息

PC端配合Charles抓取APP接口
1、导出Charles证书
点击保存到指定位置


2、打开雷电模拟器,配置相关证书
- 检查网络设置

- 上传
charles_res证书后在文件管理器打开查看,雷电模拟器支持直接拖拽进入界面后上传

- 注意:
雷电模拟器9和14导入方式不一样- 雷电模拟器9导入方式
- 双击证书,这里名称可以随便输入,点击确定

- 打开设置,找到
加密与凭证可以看到导入的证书

- 双击证书,这里名称可以随便输入,点击确定
- 雷电模拟器14导入方式:
14版本不允许直接安装证书,需要进入设置界面- 页面路径:设置->安全和隐私->更多安全和隐私设置->加密与凭证->安装证书->CA证书:找到你刚刚存放的路径选择证书文件即可
- 安装完成后,可以回到
可信凭证查找

- 雷电模拟器9导入方式
如果你刚刚是把文件直接传到手机桌面,默认存储路径是在文件->图片里面
- 查询本机
ip地址

- 查看
charles代理端口


- 在模拟器的
WLAN中配置ip和端口


到这里就可以抓取雷电模拟器中APP的接口了
3、测试
注意我们之前配置的include条件是*.baidu.com,这时候只能抓取该域名的接口,如果需要抓取别的,重新设置或者取消刚刚的include配置,抓取全部接口
由于我使用该软件是用于抓取公司的APP方便我调试接口,这里我写了一个简易的APP演示接口抓取

注意事项
charles没有抓取到接口- 检查自己配置的
include是不是正确的,看看有没有把接口过滤了 - 检查雷电模拟器WLAN设置,有没有配置你的本机IP代理
- 检查自己配置的
charles端口- 每个人端口可能不一样,不要直接写8888,参考PC端配合Charles抓取APP接口步骤二中
查看charles代理端口
- 每个人端口可能不一样,不要直接写8888,参考PC端配合Charles抓取APP接口步骤二中