Charles 查看https请求数据 Mac/ android

曾无好事来相访,赖尔高文一起予。这篇文章主要讲述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 查看https请求数据 Mac/ android】

Charles 查看https请求数据 Mac/ android

文章图片

输入系统用户名密码-> 选择[系统]类型,添加完成后,找到Charles Proxy CA证书,并双击打开:
Charles 查看https请求数据 Mac/ android

文章图片

【信任】那里选择【始终信任】,设置完后关闭窗口:
Charles 查看https请求数据 Mac/ android

文章图片

2、安装手机上的证书
回到Charles,菜单Help-> SSL Proxying-> Install Charles Root Certificate on a Mobile Device or Remote Browser
Charles 查看https请求数据 Mac/ android

文章图片

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

文章图片

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

文章图片

3、Charles上设置代理哪些https接口
可以对着Charles上已经显示有的链接右键,在弹出的菜单里选择[Enable SSL Proxying],再重新请求该接口就可以看到该链接请求的参数了
Charles 查看https请求数据 Mac/ android

文章图片

也可以在Charles菜单里设置:[Proxy]-> [SSL Proxying Settings]
Charles 查看https请求数据 Mac/ android

文章图片

在弹出的界面勾选【Enable SSL Proxying】,然后点击底部的【Add】添加需要代理的https请求:
Charles 查看https请求数据 Mac/ android

文章图片

 
  [Host]填写域名,可以用【*】代替其他字符,比如*.163.com   这样163.com这个域名下的所有连接都可以匹配
【Port】是固定的443,设置完之后重新请求https接口就可以了
Charles 查看https请求数据 Mac/ android

文章图片

 
  注意事项:
1、如果换了一台电脑,手机上也要重新访问那个链接添加一个新的证书
2、android N 7.0以及以上系统会报错:
Charles 查看https请求数据 Mac/ android

文章图片

解决办法是在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="https://www.songbingjia.com/android/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以下系统的机子

    推荐阅读