1、从官网下载链接http://www.charlesproxy.com/downloa
2、安装tips:
点解Grant Privileges 信任即可,如果点击Not Yet 或者关闭按钮,Charles 将会取消Mac 代理,需要手动设置,设置时会再次弹出该窗口。设置Mac代理
3、注册charles,附上注册码:
Registered Name: https://zhile.io
License Key: 48891cf209c6d32bf4
-
打开charles--help--register charles,注册完成之后会有个弹窗提示,
4、安装根证书以及信任根证书
help--SSL Proxying--
点击1安装charles根证书,& 点击2安装IOS模拟器证书 &点击3安装 手机证书
信任charles证书,选中charles证书,右键查看详情,信任该证书
5、抓取http请求,charles代理设置
Proxy--proxy setting --proxies ,勾选 enable transparents HTTP proxying
6、获取https请求,charles设置
在设置了第5步抓取http请求之后,charles对于https请求会显示unkonwn 就是不能解析https请求,需要的步骤已经提示看6图的右边:SSL Proxying not enabled for this host……..
顶部工具栏:Proxy-> SSL Proxying Settings->SSL Proxying:勾选Enable SSL Proxying
添加需要拦截https的域名host,端口是443 这里是把所有的host都设置进去,也可以用 * 代替会将所有的https请求都捕获到
7、 Android & IOS 手机设置抓包
证书安装,点击 help--ssl proxying-- install charles root certificate on a mobile device or remote brower--有以下弹窗
1、首先要确认手机和电脑处于同一个局域网中,连接同一个wifi,使用ping ip
2、检查你的device 设备,并设置devices设备的无线网络代理是MAC设备的IP地址,【通过charles 中点击 help/local IP Address来查看MAC设备的IP地址,以及设置的端口号,默认是8888】
2.1、在Android、IOS设备上;Android 选择无线网络,修改网络,设置代理为MAC设备的IP:port,IOS 选择无线网,修改网络,设置代理为MAC设备的IP:port
2.2、然后在Android 手机浏览器输入 chls.pro/ssl 下载证书,【Android设备使用非chrome浏览器下载的charles证书默认不能安装成功,可以在无线网络中,点击WLAN设置,选择安装证书,此时需要输入证书名称(该证书是下载到本地的 .pem 证书),点击确定 OR 如果安装还不成功,请尝试把文件重命名为.crt,再重复上述操作】
8、在charles中抓到的app中的url地址,通过copy到URL地址,以及请求所需的headers信息,就可以通过postman来调用接口了,之后的操作方式跟postman调用web接口 是一致的;
注意:在抓完包之后建议关闭代理。否则一旦电脑关闭charles那么你的手机也会断网
参考博客:
https://blog.youkuaiyun.com/windy135/article/details/79086270
附Charles常用功能介绍:https://mp.weixin.qq.com/s/9qRcbhW_lW9CMd0hjaT51A