在开发中,经常需要抓包,而Charles是比较优秀的一款抓包工具。可以帮助我们抓取所有请求和返回的数据,同时可以定制规则修改参数或者响应,方便调试和测试。

安装

访问Charles官网下载页面下载相应版本安装即可,下载页面地址:

https://www.charlesproxy.com/download/

Charles是收费软件,可以免费试用30天,如需激活请购买正版。

配置

Windows PC配置

在电脑上安装受信任证书

  • 第一步:打开charles,首先需要在电脑上安装可信任证书,选择Help -> SSL Proxying -> Install Charles Root CertificateCharles安装可信任证书

  • 第二步: 点击安装证书 -> 选择本地计算机,点击下一页 -> 选择将所有的证书都放入下列存储,点击浏览,选择受信任的根证书办法机构,点击确定,点击下一页。点击完成安装证书1 安装证书1

增加http和https抓包支持

  • 选择Proxy -> Proxy Setting
  • 修改代理端口,默认为8888,可以修改为自定义的。勾选Support HTTP/2,增加HTTP/2支持。点击OK确认 代理端口配置
  • 选择Proxy -> SSL Proxying Settings
  • 勾选Enable SSL Proxying,点击Add,添加*:443支持,表示对任意的https站点都抓包,如果只抓部分站点,可根据实际情况填写。 HTTPS支持配置
  • 如果要在电脑上抓包,可以Proxy -> 勾选Windows Proxy支持,不勾选表示电脑上的请求不抓包。

Mac OS配置

Mac OS配置与windows配置流程类似。

在Mac上安装受信任证书

  • 第一步:打开charles,首先需要在电脑上安装可信任证书,选择Help -> SSL Proxying -> Install Charles Root Certificate安装可信任证书
  • 第二步: 点击安装证书 -> 选择本地计算机,点击下一页 -> 选择将所有的证书都放入下列存储,点击浏览,选择受信任的根证书办法机构,点击确定,点击下一页。点击完成证书安装

增加http和https抓包支持

  • 选择Proxy -> Proxy Setting
  • 修改代理端口,默认为8888,可以修改为自定义的。勾选Support HTTP/2,增加HTTP/2支持。点击OK确认 代理端口配置
  • 选择Proxy -> SSL Proxying Settings
  • 勾选Enable SSL Proxying,点击Add,添加*:443支持,表示对任意的https站点都抓包,如果只抓部分站点,可根据实际情况填写。 增加https支持
  • 如果要在电脑上抓包,可以Proxy -> 勾选macOS Proxy支持,不勾选表示电脑上的请求不抓包。

iOS配置

  • PC/Mac选择Help -> Local IP Address,获取到电脑ip 获取本机ip

  • 手机进入设置 -> 无线局域网 -> 点击WIFI名字后面蓝色的 -> 滑到底部,点击配置代理 -> 点击手动 -> 将服务器填写为电脑IP地址,将端口填写为8888(如果你设置的其他端口,请填写其他端口)

  • 使用浏览器访问http://chls.pro/ssl,网站会提示此网站正尝试下载一个配置描述文件,你要允许吗?,选择允许下载配置描述文件

  • 手机进入设置,头像下方会显示已下载描述文件点击进入。点击安装安装配置描述文件

  • 手机进入设置 -> 通用 -> 关于本机 -> 最底部证书信任设置 -> 将对应的证书信任打开 信任配置描述文件

  • 访问网页即可抓包。

小米MIUI配置

  • PC/Mac选择Help -> Local IP Address,获取到电脑ip 获取本机ip
  • 手机进入设置 -> WLAN -> 点击WIFI名字后面的> -> 代理选择手动 -> 将主机名填写为电脑IP地址,将端口填写为8888(如果你设置的其他端口,请填写其他端口) 配置WLAN代理
  • 使用小米自带浏览器访问http://chls.pro/ssl,会提示下载,但是下载没有速度,可以尝试进入下载管理 -> 右上角三个点 -> 设置 -> 关闭使用迅雷下载引擎(反正我是没试成功)
  • 使用chrome或者其他浏览器访问http://chls.pro/ssl,进入下载内容,会有一个证书,记住文件地址。进入手机设置 -> 安全 -> 更多安全设置 -> 加密与凭据 -> 安装证书 -> CA证书 -> 选择刚刚下载的证书文件安装即可。 安装CA证书