您的位置:

利用Charles抓取手机包的方法

在移动端开发中,我们经常需要借助一些工具来帮助我们调试和测试应用程序。而Charles作为一款功能强大的Web代理工具,可以在移动设备和服务器之间拦截流量,实现HTTP/HTTPS协议的抓包功能。这篇文章将会介绍如何使用Charles抓取手机包,并提供相应的代码示例。

一、安装Charles

首先,我们需要下载并安装Charles。官网提供了免费试用版,可以免费试用30天。安装完成后,我们需要配置手机的代理,将请求转发到Charles。

二、配置手机代理

以iOS设备为例,在设置-无线局域网下配置代理。在配置代理时,我们需要指定Charles所在机器的IP地址以及端口号(默认为8888)。

1.连接wifi,进入wifi设置页面,点击“i”按钮
2.下拉页面,找到“配置代理”选项,选择手动配置
3.输入Charles所在机器的IP地址以及端口号
4.按照弹出的提示,下载并安装证书
5.在系统设置中信任安装的证书

三、安装证书

由于Charles需要中间人攻击,需要我们先信任Charles的根证书,才能够正常进行HTTPS请求的抓取。

1.在手机上浏览器中输入chls.pro/ssl下载证书
2.安装证书,输入设备密码
3.为证书设置信任,打开手机设置->通用->关于本机->证书信任设置->选择刚刚安装的证书,并信任它

四、Charles配置

在完成手机代理配置和证书安装后,我们需要在Charles中打开SSL代理。我们需要打开菜单栏中的Proxy->SSL Proxying Settings,将需要抓取的域名添加到白名单中。

1.打开Charles
2.进入“Proxy”->“SSL Proxying Settings...”页面
3.点击“Add”按钮,输入需要抓包的域名
4.将“Enable SSL Proxying”选项打钩,添加成功

五、开始抓包

在完成上述步骤后,我们就可以开始抓取手机的包了。此时,我们可以在Charles抓包窗口中看到手机与服务器的所有HTTP/HTTPS请求。另外,我们还可以通过设置网络速度、请求延时等等,模拟网络环境进行测试。

1.打开Charles,点击“Start”开始抓包
2.在手机上访问需要抓包的应用,系统会询问安装证书的提示
3.确认安装证书
4.在Charles中即可看到相关的请求

总结

通过这篇文章的介绍,相信读者已经了解在移动端开发中如何使用Charles进行手机包的抓取。Charles作为一款强大的抓包工具,还有很多其他的功能和配置项,读者可以自行研究。