一.真机抓包
首先到去 http://www.charlesproxy.com/ssl.zip 下载CA证书文件。双击crt文件,选择总是信任就可以了,当然如果要抓取iPhone设备上的HTTPS请求,需要在iPhone上也安装一个证书,在手机浏览器输入这个网址:http://charlesproxy.com/getssl ,点击安装即可。然后你就可以告别那烦人的乱码,可以愉快地抓包了。如果这时候你还是抓不了的话,检查一下Proxy-->SSL Proxying Settings是否设置OK,设置参考下图:
首先使手机和电脑在一个局域网内,不一定非要是一个ip段,只要是同一个路由器下就可以了。按照上面说的把证书安装好,然后找到电脑的IP,你可以选择在终端输入ifconfig en0来获取,也可以选择打开网络偏好设置来查看。
接下来打开Charles的代理设置:Proxy->Proxy Settings,设置一下端口号,默认的是8888,这个只要不和其他程序的冲突即可,并且勾选Enable transparent HTTP proxying。
在手机上连接上和电脑在同一局域网的网络上设置HTTP代理。端口号就是刚刚在Charles上设置的那个。
然后在手机上随便打开一个网址,这是Charles会弹出一个框让你确认是否代理,点击allow就可以了,然后你就会在Charles上发现手机上的请求了
证书信任问题
1、iOS10之后的证书信任
设置--> 通用-->关于本机-->证书信任设置
2、设置--> 通用-->描述文件与设备管理-->描述文件设置信任
Charles 抓包工具 — 手机抓包/模拟器抓包
二.模拟器抓包
打开模拟器Safari浏览器,首先到去 http://www.charlesproxy.com/ssl.zip 下载CA证书文件。双击crt文件,选择总是信任就可以了。其他的参考真机抓包流程