Charles使用及常用功能介绍
Charles是一款常用的网络抓包工具,启动Charles后,会自动开启的浏览器代理进行网络请求截取,Charles和基本功能差不多,只是Fiddler是免费的,但是没有MAC版,Charles是属于收费软件,但是功能还是都能用的,只是有时间限制
Charles下载安装
点击下载Charles,进入官网下载页面,选择相应系统的安装包,然后安装即可,安装完成后可根据下图所示进行破解,破解后就没有时间限制啦,激活工具
Charles介绍
Charles界面视图如下所示:
常用功能
1. 录制设置(Recording Settings…)
Options:设置录制记录数据大小
Include:添加或移除要录制的请求,需填写要监控的协议、主机和端口信息,目的是达到过滤效果
Exclude:与Include相反,填写的是要排除的请求
还有其它两种方式进行过滤方式:
- 录制结束后在过滤栏搜索Host,请求列表只显示满足搜索条件的结果
- 录制结束后选择要查看的请求,右键点击【Focus】,选择后请求列表会把其它请求放到“Other Hosts”的分类中
2. 代理设置(Proxy Settings)
为了能抓取HTTPS请求,需要配置好代理,否则https请求数据显示乱码
首先安装证书,点击【Help】→【SSL Proxying】→【Install Charles Root Certificate】,根据下图所示进行安装
然后设置代理
点击【Proxy】→【Proxy Settings…】,勾选Enable transparent HTTP proxying
,点击【OK】
点击【Proxy】→【SSL Proxying Settings…】,勾选Enable SSL Proxying
,添加要包含或排除的请求,若是需要录制所有https请求,则Host和Port直接使用通配符*
号即可
3. 禁用缓存(No Caching…)
有些请求获取不到可能是因为存在缓存,所有在录制之前可以先设置不从缓存中获取数据,若是针对特定的请求不走缓存,则需勾选Only for selected locations
,并添加请求信息
以上步骤完成后就可以配置完成后就可以抓取请求数据啦
4. 弱网设置(Throttle Settings…)
此设置通常用于移动端抓包时使用,可模拟不同的网络环境,勾选Enable Throttling
,特定请求则需添加信息,可修改带宽、稳定性等信息后,保存预设到选项中
5. 本地映射(Map Local…)
选择需要本地映射的接口,右键选择Map Local,此方式自己仅需选择本地映射文件,Map from信息会自动填充,重新获取响应后得到的时本地的响应数据
6. 断点设置(Breakpoints Settings…)
选择要打断点的接口,右键选择Breakpoints
,然后打开断点设置窗口,点击【Proxy】→【Breakpoint Settings…】,刚刚的接口信息显示在窗口信息中,勾选Enable Breakpoints
,点击【OK】,重新获取该请求,会自动打开”Breakpoints“tab页,修改接口参数信息后,点击【Execute】可获取到响应的返回信息
7. 编辑修改(Compose)
选择接口,右键选择Compose
,临时修改原有请求信息后,点击【Execute】,对单个进口进行测试时会使用
8. 重新发送(Repeat)
此操作和Compose类似,都是重新发送请求,区别是Repeat不能修改请求信息,只是重复获取响应数据,Repeat Advanced可设置重复次数、并发数及间隔时间
手机端数据截取
-
先在手机上安装证书,否则无法获取https请求,如下图所示,在移动设备上安装证书
-
手机上设置代理,根据Charles提示设置代理,然后浏览器访问
chls.pro/ssl
,Charles会出现安全提示,允许之后才能访问并成功下载证书,下载后将证书安装至手机,提示“已安装CA证书”表示安装完成 -
安装证书后Charles访问控制中会显示移动端IP,并且可以抓取到APP信息
至此Web端和移动端的请求都可以截取到啦,抓取移动端数据时,可以取消选择Windows Porxy
,就不抓取Web端数据啦,更多使用方法请查看官方文档