charles 可以抓 电脑端的包,也可以抓 手机app的包。 Android,IOS 都可以进行抓包。

Android抓包

前提条件

手机和电脑要在同一个WiFi 局域网。并且WiFi 没有做安全限制。
image.pngs

设置代理

image.png
选择安装手机证书,弹出对应的提示
image.png
记录下提示中的IP地址和端口号。
比如我的ip是 192.168.31.167
端口号 8888
记录下来。


手机端配置

手机找到自己的WiFi配置。
找到代理,主机名和端口号里面分别填写自己的 ip地址 和端口号。
代理设置为 手动
image.png
输入主机名和端口号。输入完成之后保存。
image.png

手机安装证书

根据Charles的说明,在手机的浏览器中打开 http://chls.pro/ssl
image.png
建议使用手机自带的浏览器访问
image.png
手机访问这个地址的时候,Charles 会有对应的提示。
根据提示 点击【Allow】
image.png

Charles允许之后,再次手机上访问 链接 http://chls.pro/ssl
image.png
可以看到安装证书的界面。点击【立即下载】
image.png

下载完成之后,现在才是麻烦的开始,不同的手机 安装证书的方式不一样。
华为手机安装 证书:https://blog.csdn.net/qq_39720249/article/details/121330781
小米手机安装 证书:https://jingyan.baidu.com/article/495ba841f6fe2279b30edef2.html
oppo手机安装证书: https://blog.csdn.net/plychoz/article/details/80832405

安装证书的时候,证书命名,可以随意命名
image.png
安装成功之后,提示
image.png

开始抓包

手机抓包跟其他抓包都是一样的。只需要在手机上进行操作即可。
image.png
这里说明一下,现在正式上线的手机app 很多都做了安全加固,是抓不到的,就算抓到也是乱码。但是在测试环境中,可以让开发在测试包上不要做安全加固,这个是可以抓到的。

所以你在抓线上正式环境的包的时候,如果出现unknown 也是正常的。因为人家做了安全加固。

关闭代理

下面这个很重要。
抓包完成之后,一定要记得关闭手机的代理,否则你的手机不能上网。
抓包完成之后,将代理设置为 【
image.png
就可以了。

苹果手机抓包

前提条件

手机和电脑要在同一个WiFi 局域网。并且WiFi 没有做安全限制。

设置代理

image.png
根据提示
image.png
手机打开网络配置
设置代理的ip地址和端口号
image.png
输入对应的信息
image.png
存储完成之后,电脑提示是否允许链接,点击【Allow】

image.png

手机安装证书

浏览器打开 访问 http://chls.pro/ssl
进行证书下载,安装
image.png
下载完成之后
在手机—设置—通用—vpn管理中进行安装
image.png

开始抓包

跟Android抓包一样,安装好了之后进行抓包,Charles 中可以看到对应的请求。

最后一定也要记得:抓包完成之后,一定要关掉代理。
image.png