Charles

737 阅读4分钟

一、简介

Charles其实是一款代理服务器,通过成为电脑或者浏览器的代理,然后截取请求和请求结果达到分析抓包的目的。该软件是用Java写的,能够在Windows,Mac,Linux上使用。

在做测试的时候,特别是对APP做弱网测试,使用 Charles 比较多,但是该软件是收费的,以下介绍的是破解版后的。

二、下载安装Charls

下载官方版安装包

官方下载地址:www.charlesproxy.com/download/

pojie文件介绍地址:blog.zzzmode.com/2017/05/16/…

这里下载的版本是:Charles-4.6.1

安装

需要先安装Charles,再安装破解文件。以下介绍的是Windows安装。

1.安装Charles

下载安装包:charles-proxy-4.6.1-win64.msi, 直接双击运行安装即可,简单快捷,默认下一步即可。

image.png

安装完成后,打开运行charles.exe,显示的是使用官方版本,只能使用30天,如下图:

image.png

2.破解

下载的破解文件为charles.jar,打开Charles安装位置,找到lib文件夹,将下载的破解文件的charles.jar替换掉原先lib路径下的charles.jar,打开后已经显示为注册版。

image.png

3.Charles 抓取 pc 端 https 请求

在 pc 端想要抓取 https 的请求,需要先在本地安装 Charles 的证书,操作步骤如下:

a.点击Charles 的 help 菜单,安装证书

image.png

b.弹出安装提示,点击安装证书

image.png

c.选择本地计算机,点击下一步

image.png

d.选择证书存储的位置,一定要选择受信任的根证书颁发机构

image.png

e.下一步,即可导入完成

image.png

导入完成之后,我们就可以抓取PC端的 https 的请求包了。

4.Charles 抓取 手机 端 https 请求

需要保证PC端和移动端是在同一个局域网

a. 查看PC端的ip:命令行窗口输入:ipconfig

image.png

b. Android手机打开WiFi(该WiFi与PC端连接的WiFi一致),配置代理。

将代理改为手动,输入主机名和端口,主机名为PC端的ip,端口为之前配置的Charles的port

image.png

image.png

c.下载安装证书

打开默认手机默认浏览器,输入://chls.pro/ssl ,下载证书并提示安装,根据提示一步一步安装好

三、Charles界面详解

image.png

1.主导航栏图标详解

左一黄色扫把:点击之后清除抓到的所有请求

左二红色圆圈:红色亮起表示正在抓取请求,灰色表示不在抓取请求

左三🔒:上锁说明开启了SSL Proxying,打开锁说明没有开启SSL Proxying。

左四灰色🐢:灰色乌龟是网速设置正常,绿色乌龟指慢速网速开启了

左五红色六角形:断点图标,灰色说明断点未开启,红色说明在使用断点

左六蓝色钢笔:编辑请求,点击之后可以修改请求的内容

左七蓝色旋转箭头:重复发送请求的图标,先选定某一请求点击该图标则请求会被再次发送

左八绿色✔:验证选中的请求的响应

右二扳手:对应于导航栏中的tools图标,有些许功能

右一设置:设置charles中的情况

2.请求内容详解

Overview:展示该请求的一个大体情况,例如:请求头,请求响应结束时间,请求开始时间以及自己的notes等

content:该请求的具体内容和服务器的响应内容(配合下面的导航栏进行查看该请求的具体内容)

summary:展示一个该请求的大体资源分布情况。例如:服务器响应了多长时间,host是什么等

chart:以表格形式告诉我们一个响应时间的分布情况。

notes:已经很清楚了,点击之后自己可以对该请求记录一些东西,方便后续查看该接口的用途,可在overview中查看。

3.响应内容详解(只有在请求中选择content时才可以看到响应内容)

header:响应的头信息

text:文本形式展示响应内容

hex(16进制)和compressed(压缩)一般不予查看

json:以json格式查看响应内容内容,简单明了

json text:将json格式的内容展开书写

raw:详情内容的详细情况