提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
对于客户端开发来说,需要自己抓包测试的场景其实并不多,这就导致每次需要抓包的时候,需要重新配置抓包工具和手机配置。抓包的工具其实挺多的,如:Wireshark、Fiddler、Charles 等,本文主要记录下如何配置 Charles 来抓取 App 接口,为后续使用的时候,方便查看上手。
一、Charles 是什么?
Charles 以树状结构显示网络请求,支持多种协议和设备的抓包分析,用户界面友好。
二、使用步骤
1.安装 Charles
首先,在电脑上安装了 Charles。如果还没有安装,可以从 Charles 官网 下载对应版本并安装(Mac 或 Windows)。
2.配置 Charles 代理
- 启动 Charles 后,进入
Proxy
菜单,确保Mac
或Windows
系统的代理设置是启用的。默认情况下,Charles 会监听 8888 端口。 - 如果需要,也可以检查
Proxy
->Proxy Settings
来确认端口设置。
3.配置手机网络代理
- 连接同一网络:确保手机和电脑在同一个 Wi-Fi 网络下。
- 设置手机代理:打开手机的 Wi-Fi 设置,找到当前连接的 Wi-Fi 网络,点击“修改”或“编辑”网络设置,启用代理并设置为手动。
- 代理主机:设置为你电脑的 IP 地址。
- 在 Mac 上,可以在
System Preferences
->Network
中找到你的本地 IP 地址。 - 在 Windows 上,可以打开 Charles 在顶部导航栏中选择 help,在子菜单中选择 Local IP Address 点击弹出弹窗即可获取电脑的 IP地址,如图:
也可以在cmd
中输入ipconfig
来找到本地 IP 地址。
- 在 Mac 上,可以在
- 代理端口:设置为
8888
,即 Charles 默认的代理端口。
- 代理主机:设置为你电脑的 IP 地址。
4. 配置手机证书
如果想让 Charles 解密 HTTPS ,需要在手机上安装 Charles 的根证书。
- 下载并安装证书:
- 在手机浏览器中访问
http://charlesproxy.com/getssl 进行 CA 证书下载
。 - 在手机设置里,找到安全与隐私,找到 证书存储,从 设备存储安装证书 即可。
- 安装后,手机会提示是否信任该证书,选择“信任”。
- 在手机浏览器中访问
- 启用 HTTPS 捕获:在 Charles 中,确保
Proxy
->SSL Proxying Settings
中启用了Enable SSL Proxying
,并设置了要抓取的域名和端口(可以使用*
作为通配符,表示抓取所有域名的 HTTPS 请求),贴图如下:
5. 开始抓包
完成上述配置后,手机的 HTTP 和 HTTPS 请求将通过 Charles 代理进行转发并抓取。你可以在 Charles 中查看请求和响应的数据。
注意:如果还是没有抓到包,可以重启 Charles 尝试
总结
- 安全性:使用 Charles 抓包会让你能够拦截 HTTPS 请求,所以请确保不要在敏感操作中使用这个代理。
- 关闭代理:抓包完成后,记得在手机上关闭代理设置,并删除证书,以防止影响正常的网络连接。