1.应用场景
如果不知道这是干嘛的,那么只能说明你没有吃过移动开发的苦,开个玩笑,苦算不上,就是有时候有点小折腾,不过也仅限于第一次配置的时候了。
所以本文主要用于移动开发调试,查看接口请求响应数据。
大家应该都知道基于Web开发,自然没必要如此,通过Web开发者工具即可。
2.学习/操作
目录
1.文档阅读
// Charles 4.6.3b2 破解版 for Mac http抓包神器
// 如何进行APP抓包 ? - 学习/实践_william_n的博客-CSDN博客_怎么抓app的包
2.整理输出
2.1 介绍
Charles 是一款HTTP代理服务器/HTTP监视器/反向代理服务器,当程序通过Charles的代理访问互联网时,Charles可以监控这个程序发送和接收的所有数据。它允许开发者查看所有连接互联网的HTTP通信,这些包括request, response和HTTP headers (包含cookies与caching信息),有些同学可能会问,chrome的开发者工具不是集成了吗?小编想说,那你是没经历过移动开发调试,哈哈。
2.2 安装
官网下载安装Charles: Download a Free Trial of Charles • Charles Web Debugging Proxy
Charles 4.6.3b2 破解版 for Mac http抓包神器
2.3 JiHuo
第一步
第二步
第三步
重启Charles即可
2.4 使用
1. HTTP抓包
A. 查看电脑IP地址
B. 设置手机HTTP代理
手机连上电脑,点击“设置->无线局域网->连接的WiFi”,设置HTTP代理: 服务器为电脑IP地址:如192.168.1.169 端口:8888 -- 这个是默认的,Charles设置
C. 电脑上打开Charles进行HTTP抓包. -- 设置代理后需要在电脑上打开Charles才能上网
点击“Allow”允许,出现手机的HTTP请求列表
手机上打开某个App或者浏览器什么的,如果不能上网,检查前面步骤是否正确。
这里手机打开美团App,然后随便操作,这里点击了外卖
可以看到只能抓去http请求/响应,https是没办法抓取的,需要做配置。
2. HTTPS抓包
HTTPS的抓包需要在HTTP抓包基础上再进行设置
设置前抓包HTTPS是这样的
查看内容 -- 乱码
设置后抓包HTTPS长这样
设置流程
A. 安装SSL证书到手机设备
出现弹窗得到地址 chls.pro/ssl --- 上面的文本中有提示,认真阅读一下
B. 手机安装SSL证书的地址
在手机Safari浏览器输入地址 chls.pro/ssl,出现证书安装页面,点击安装 手机设置有密码的输入密码进行安装
安装证书
注意1:如果遇到Safari浏览器输入这个网址chls.pro/ssl安装不了证书的情况,。检查:(1)设置好手机HTTP代理 (2)电脑上Charles要开着
注意2:iOS 10.3系统,需要在 设置→通用→关于本机→证书信任设置 里面启用完全信任Charles证书 -- 这也是上面的弹窗说的内容
C. Charles设置Proxy
Proxy -> SSL Proxying Settings...
这里很粗暴,直接抓取所有的站点 -- 非常不推荐,因为比较费资源
建议还是想抓取哪个,设置哪个即可。
D. 进行HTTPS抓包
让手机重新发送https请求,可看到抓包
注意:
不抓包请关闭手机HTTP代理,否则断开与电脑连接后会连不上网.
郑重提醒:
iOS10.3的真机抓包HTTPS, 在手机设置,关于本机,最下边有一个证书信任,必须打开Charles的证书信任,才能抓包。而且,挂证书的API貌似抓不到包,只显示❌, 只有不挂证书的才能抓到。--- 换句话说,上面的HTTPS抓包,并不是真的所有的HTTPS包都能抓取,如果App方设置为不允许抓包,便抓不到。
这种情况下,如果自家公司的App,让前端开发人员,帮忙解决,去掉App中SSL的验证,重新打包安装 --- 这点自己踩了坑
后续补充
...
3.问题/补充
TBD
4.参考
// Charles 4.6.3b2 破解版 for Mac http抓包神器
// 如何进行APP抓包 ? - 学习/实践_william_n的博客-CSDN博客_怎么抓app的包
后续补充
...
封面图片