Mac如何抓取ios中http、https请求的包

来源:互联网 发布:广州恒大淘宝官网首页 编辑:程序博客网 时间:2024/06/07 17:46
云图AR集成工作已经完成,app也已经顺利上架应用市场。不过AR展示的素材却比较稀少,想到数联中国(之前云图一个合作商)宣传册有素材。试着通过抓包的方式获取一些素材,通过网上资料的查找,还算顺利的抓到了部分数据。在此做个笔记记录抓包的过程,以便以后再次遇到类似需求可以有资料参考。

1. Charles安装官网下载安装Charles:
https://www.charlesproxy.com/download/
2. HTTP抓包(1)查看电脑IP地址


(2)设置手机HTTP代理手机连上电脑,点击“设置->无线局域网->连接的WiFi”,设置HTTP代理:
服务器为电脑IP地址:如192.168.1.169
端口:8888



设置代理后,需要在电脑上打开Charles才能上网,这里遇到一个小坑(一开始没有注意到ios设备与代理不在同一网段)
(3)电脑上打开Charles进行HTTP抓包手机上打开某个App或者浏览器什么的,如果不能上网,检查前面步骤是否正确



点击“Allow”允许,出现手机的HTTP请求列表

HTTP抓包

3. HTTPS抓包HTTPS的抓包需要在HTTP抓包基础上再进行设置
设置前抓包HTTPS是这样的




设置后抓包HTTPS长这样







以下为在HTTP抓包基础上进行HTTP抓包的进一步设置步骤:
(1)安装SSL证书到手机设备点击 Help -> SSL Proxying -> Install Charles Root Certificate on a Mobile Device



出现弹窗得到地址 chls.pro/ssl

手机安装SSL证书的地址

在手机Safari浏览器输入地址 chls.pro/ssl,出现证书安装页面,点击安装
手机设置有密码的输入密码进行安装

安装证书

  • 注意1:有兄弟姐妹说Safari浏览器输入这个网址chls.pro/ssl安装不了证书的情况,
    亲测要(1)设置好手机HTTP代理    (2)电脑上Charles要开着
  • 注意2:iOS 10.3系统,需要在 设置→通用→关于本机→证书信任设置 里面启用完全信任Charles证书
    (这里感谢@13002171223的提出这点 ,之前没升级10.3哈)
(2)Charles设置ProxyProxy -> SSL Proxying Settings...



勾选Enable SSL Proxying,点击Add



Host设置要抓取的https接口,比如想抓这个





Host填写:https://api.weibo.cn
Port填写:443



(3)进行HTTPS抓包让手机重新发送https请求,可看到抓包

HTTPS抓包

注意:不抓包请关闭手机HTTP代理,否则断开与电脑连接后会连不上网