Charles如何抓取http/https请求

时间:2024-11-13 07:33:53
charles ,我们亲切的把它称作茶壶,功能还是十分强大的,尤其是在mac上无法使用fiddler更是。。
其实很容易上手,下载安装,手机设置下ip代理不久可以了嘛?但是你发现包为https的时候就不那么容易了,所以写一个教程,也是自己设置的过程记录下来。顺便把正常http的抓包过程也叙述一下。

Charles 是常用的网络封包截取工具,在做移动开发时,我们为了调试与服务器端的网络通讯协议,常常需要截取网络封包来分析。

Charles是通过将自己设置成系统的网络访问代理服务器,使得所有的网络访问请求都通过它来完成,从而实现了网络封包的截取和分析。

除了在做移动开发中调试端口外,Charles 也可以用于分析第三方应用的通讯协议。配合 Charles 的 SSL 功能,Charles 还可以分析 Https 协议。

本文以mac为例子进行操作,windows下想使用charles的道理相同,不过windows下倒是更习惯用fiddler
官网: /
  • Charles安装
  • HTTP抓包
  • HTTPS抓包


一. Charles安装
详细请见上一篇博客: charles破解安装

二. HTTP抓包
(1)查看电脑IP地址[两种方法]

方法一

方法二
(2)设置手机HTTP代理
手机连上电脑,点击“设置->无线局域网->连接的WiFi”,设置HTTP代理:
服务器为电脑IP地址:如192.168.1.169
端口:8888


(3)电脑上打开Charles进行HTTP抓包
手机上打开某个App或者浏览器什么的


点击“Allow”允许,出现手机的HTTP请求列表


HTTP抓包
三. HTTPS抓包
HTTPS的抓包需要在HTTP抓包基础上再进行设置
在没有设置前,对HTTPS抓包是这样的,看不到信息


设置后抓包HTTPS长这样



以下为在HTTP抓包基础上进行HTTP抓包的进一步设置步骤
(1)安装SSL证书


(2)安装SSL证书到手机设备
点击 Help -> SSL Proxying -> Install Charles Root Certificate on a Mobile Device


出现弹窗得到地址  /ssl

手机安装SSL证书的地址

在手机【Safari浏览器】【切记不能用其他浏览器】输入地址  /ssl ,出现证书安装页面,点击安装
手机设置有密码的输入密码进行安装




安装证书
(3)Charles设置Proxy
Proxy -> SSL Proxying Settings...


勾选Enable SSL Proxying,点击Add



Host设置要抓取的https接口,比如想抓这个


Host填写: https:// 或者 *.com *.cn
Port填写:443



(3)进行HTTPS抓包
让手机重新发送https请求,可看到抓包

HTTPS抓包
注意:不抓包请关闭手机HTTP代理,否则断开与电脑连接后会连不上网
----end