Charles 查看https请求数据 Mac/ android

Posted guangdeshishe

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Charles 查看https请求数据 Mac/ android相关的知识,希望对你有一定的参考价值。

Charles_v4.0.1_Mac_破解版下载地址:https://pan.baidu.com/s/1c23VPuS

1、在Mac电脑上安装Charles的根证书

打开Charles->菜单Help->SSL Proxying->Install Charles Root Certificate

输入系统用户名密码->选择[系统]类型,添加完成后,找到Charles Proxy CA证书,并双击打开:

【信任】那里选择【始终信任】,设置完后关闭窗口:

2、安装手机上的证书

回到Charles,菜单Help->SSL Proxying->Install Charles Root Certificate on a Mobile Device or Remote Browser

 

根据弹窗里的提示,打开手机,wifi设置,将代理设置连接到Charles,然后打开手机里的浏览器访问弹出所提示的网页地址,前面最好加上http(很多浏览器不输入http://会变成跳转搜索界面),比如我这边的是要访问:http://chls.pro/ssl,

如果浏览器只是弹出文件下载,文件下载完后又无法安装,则需要换一个浏览器,比如我的小米手机就是这样,我换了UC浏览器就可以正常弹出安装证书界面,名字随便取,用途要选【vpn和应用】,然后确定即可:

3、Charles上设置代理哪些https接口

可以对着Charles上已经显示有的链接右键,在弹出的菜单里选择[Enable SSL Proxying],再重新请求该接口就可以看到该链接请求的参数了

也可以在Charles菜单里设置:[Proxy]->[SSL Proxying Settings]

在弹出的界面勾选【Enable SSL Proxying】,然后点击底部的【Add】添加需要代理的https请求:

 

 [Host]填写域名,可以用【*】代替其他字符,比如*.163.com   这样163.com这个域名下的所有连接都可以匹配

【Port】是固定的443,设置完之后重新请求https接口就可以了

 

 注意事项:

1、如果换了一台电脑,手机上也要重新访问那个链接添加一个新的证书

2、android N 7.0以及以上系统会报错:

解决办法是在android App项目里:res\\xml目录下新建一个文件network_security_config.xml内容如下:

<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<debug-overrides>
<trust-anchors>
<!--仅在可调试时信任用户添加的CA-->
<certificates src="user"/>
</trust-anchors>
</debug-overrides>
</network-security-config>

然后打开AndroidManifest.xml,【application】的属性里添加android:networkSecurityConfig="@xml/network_secruity_config"

<application
android:icon="@drawable/icon"
android:label="@string/app_name"
android:theme="@style/Theme.AppCompat.Light"
android:networkSecurityConfig="@xml/network_security_config">

 

 重新打包运行安装即可,上面的配置只有debug包才有效,正式包还是依然不能正常代理https,release包要查看https代理可以找一台android 7.0以下系统的机子

以上是关于Charles 查看https请求数据 Mac/ android的主要内容,如果未能解决你的问题,请参考以下文章

MAC配置Charles,过滤筛选抓取https请求(证书安装完毕且设置信任后,https依然为unknown的原因)

Mac使用Charles抓取ios手机APP中的https请求

Mac 配置Charles,抓取移动设备数据

charles录制https请求

iOS 启用Https和调试:设置Charles查看加密请求内容

Mac Charles 抓包 iPhone HTTPS 请求,iPhone 要做什么