Skip to content

Charles安装和使用教程

Charles简介

Charles是什么

Charles中文名叫青花瓷,是PC常用的网络封包截取工具,其实是一款基于HTTP协议的代理服务器,通过将自己设置成系统(电脑或浏览器)的网络访问代理服务器,然后截取请求和请求结果,达到抓包分析的目的。该软件是用Java写的,能够在Windows、Mac、Linux上使用

Charles的工作原理

前置步骤

  1. 需要运行Charles并配置代理
  2. 在客户端上面需要配置代理

步骤

  1. 由客户端发送请求;
  2. Charles接收在发送给服务端;
  3. 服务端返回请求结果给Charles;
  4. 由Charles转发给客户端。

Charles的主要功能

  • 抓取HTTP和HTTPS的请求和相应
  • 支持重发网络请求,方便后端调式
  • 支持修改网络请求参数
  • 支持网络请求的截取并动态修改(断点调试 )
  • 支持模拟慢速网络(流量控制),主要是模仿手机2G/3G/4G的访问流程

Charles安装与配置

安装Charles

Charles官网:http://www.charlesproxy.com
  1. 根据不同的系统,选择对应链接下载

注:window安装,Charles下载后,打开安装程序,按照提示一路下一步,就可以安装成功了

​  MAC版安装包打开后将 Charles 拖到 Application 目录下即可

Charles界面

PC 抓取HTTP协议

> 启动Charles后,Charles会自动设置成浏览器的代理,不需要进行过多的设置。通过PC浏览器浏览网页时,浏览器会发送网络请求和接收响应,Charles就会直接抓取到这些请求信息和响应信息。

PC 抓取HTTPS协议

https协议的包不能正常显示,会显示unknown,需要安装SSL证书才可以

安装SSL证书步骤:

  1. 点击顶部菜单栏【Help(帮助)】–>选择【SSL Proxying(SSL代理)】,点击【install Charles Root Certificate(安装Charles Root证书) 】安装Charles根证书即可(PS:安装过程一直下一步就可以)

  1. 点击【Proxy(代理)】–>【SSL Proxying Settings…(SSL代理设置)】

  1. 在弹出选项卡中,勾选【Enable SSL Proxying(启用SSL代理)】点击【add(添加)】,在Host输入【*】表示接收任何主机,在Prot输入【443】最后点击【ok】保存。

完成以上操作,就完成Charles抓取HTTPS数据包的所有配置了。

抓取APP端的HTTP/HTTPS协议

Charles可以抓取来自App发出的HTTP/HTTPS请求。

手机抓包需要在电脑端配置下,并且同时需要手机和电脑在同一网络下,也就是手机和电脑连接同一个wifi。

电脑端配置:

  1. 电脑端启动Charles;
  2. 点击【Help(帮助)】–>【local IP Address(本地IP地址)】获取下ip地址。(也可以直接通过电脑自带的CMD命令来获取电脑IP【ipconfig】)
方法一:

方法二:

打开"运行"(快捷键:win+R键;或者在任务栏的"搜索"按钮中查找并点击"运行"),输入"cmd"后进入命令行窗口,在命令行窗口中输入"ipconfig"命令查看IP

  1. 点击【Proxy(代理)】–>【Proxy Settings…(代理设置)】,设置下http代理端口号"9999",默认是"8888",只要不和其他程序冲突即可。

手机端设置:

  1. 打开手机的设置页面;
  2. 选择【无线和网络】;
  3. 选择【WLAN】;
  4. 点击wifi进入详情界面;
  5. 点击【代理】【手动】;
  6. 输入电脑【IP地址(192.168.1.12)】以及端口号【8888】,这是我本机的,根据自己情况合理配置;
  7. 点击【保存】;

电脑端Charles弹出链接请求后,点击【Allow(同意)】

接下里验证下手机请求,打开手机App,或者手机浏览器。当我们看到Charles里能抓到这个连接,就说明配置没问题。

如果看到unknown,那是因为我们没有安装针对手机端的证书,下面继续我们手机端HTTPS证书安装。

安装手机端HTTPS证书

  1. 点击顶部菜单栏【Help(帮助)】–>选择【SSL Proxying(SSL代理)】,点击安装【Install Charles Root Certificate On a Mobile Device or Remote Browser

意思是:在手机设置好代理后,在手机浏览器中访问 chls.pro/ssl 下载证书,并安装。 在手机上进行下载证书,并安装即可。

模拟慢速网络

在 Charles 的菜单上,选择 "Proxy"–>"Throttle Setting" 项,在之后弹出的对话框中,我们可以勾选上 "Enable Throttling",点击可选择 Throttle Preset 的类型: