mac ---Charles抓包---ios苹果手机
安装Charles
1. 获取PC的IP地址
在Charles菜单栏 -> Help -> Local IP Address中可以查看PC的IP地址。
2. 配置iPhone代理
在iPhone的设置 -> 无线局域网 -> 局域网信息(i) -> 配置代理 -> 手动中配置代理,服务器输入框中填写PC的IP地址,端口输入框中填写Charles的代理端口(一般是8888)
iPhone代理配置完成后,Charles会弹出连接提示框,点击Allow之后即可使用Charles对从该iPhone发出的请求进行抓包了。
3. 抓包HTTPS请求
在配置iPhone代理完毕后,就可以通过Structure或者Sequence窗口预览HTTP请求的数据了。但由于HTTPS请求被加密过,预览请求时只能预览到乱码数据。要预览到HTTPS请求的数据明文,需要PC和iPhone安装证书授权。
1) PC安装证书
在Charles菜单栏 -> Help -> SSL Proxying -> Install Charles Root Certificate中可以为PC安装证书,证书可以在Mac的钥匙串中查看
2) iPhone安装证书
在iPhone浏览器中访问http://charlesproxy.com/getssl可以下载证书并安装。此地址一般不会变化,可以在Charles菜单栏 -> Help -> SSL Proxying -> Install Charles Root Certificate on a Mobile Device or Remote Browser中查看最新的官方证书下载地址。
基于iOS的证书信任机制,在安装完成并信任证书后,需要到iPhone设置 -> 关于本机 -> 证书信任设置中启用根证书。
这样,就可以使用Charles中抓包iPhone发出的HTTPS请求并预览明文数据了。
抓包模拟器上的HTTPS请求需要点击Install Charles Root Certificate in iOS Simulators安装证书。