美文网首页
charles使用(四)--抓取https请求

charles使用(四)--抓取https请求

作者: 清宵寒夜 | 来源:发表于2021-08-26 11:07 被阅读0次

    抓取Https的额外配置

    在不做任何证书配置的情况下,抓取Https看到的response是一堆乱码的字符。左侧Structure里看到的请求host也是一把锁的样子,点击展开后,下面的请求也都是一把锁,显示的<unknown>。

    image

    默认我们是看不到https的请求数据的。我们需要安装证书。一般需要如下两个步骤:

    第一步: 配置电脑证书 (不配置好像也没问题)

    在Charles的顶部菜单栏,选择 Help > SSL Proxying > Install Charles Root Certificate,就会把证书安装到电脑的钥匙串里。

    image

    打开钥匙串,钥匙串选择登录,种类选择证书,就可以看到安装的Charles证书了。

    image

    如果证书上有个红色的叉,是因为此证书不被信任,双击证书,展开信任那一栏,选择始终信任就可以了。信任完后,钥匙串看到的证书,红叉就会变成加号。

    image

    2、SSL Proxing > Install Charles Root Certificate on a Mobile Device or Remote Browser

    第二步: 配置手机描述文件
    1. 下载描述文件。浏览器打开http://chls.pro/ssl,最好用手机自带的Safari打开,微信直接打开不会显示下载弹框。

      image
    2. 安装描述文件。设置 > 通用 > 描述文件,点击右上角安装。

      image
    3. 证书信任设置。设置 > 通用 > 关于本机 > 证书信任设置(滑倒底部才能看见),打开信任开关,在弹出的警告框点击继续就可以了。
      注意: 如果不打开这个开关,在SSL Proxying Settings设置了Include的所有服务器地址都是无法请求到数据的。
      虽然charles的根证书已经在安装列表中显示,但它是被关闭的。在iOS10.3之前,当你将安装一个自定义证书,iOS会默认信任,不需要进一步的设置。而iOS10.3之后,安装新的自定义证书默认是不受信任的。如果要信任已安装的自定义证书,需要手动打开开关以信任证书。

      image
    第二步: 配置要抓取的https请求。

    1、Proxy > SSL Proxying Setting,点击add,把需要抓取的https请求的host添加进去就可以了(port可填可不填)。下图为抓取百度主页是填入的host。
    抓取一个不认识的网站或者app时,如何确认host?
    Structure那一排列表,截取https://后面的那一截就是了。

    本文转载自正直的瓜子脸之Charles使用总结

    相关文章

      网友评论

          本文标题:charles使用(四)--抓取https请求

          本文链接:https://www.haomeiwen.com/subject/bsriultx.html