Charles基本操作

本文详细介绍了Charles的使用,包括SSL证书下载以解析HTTPS接口,断点测试、本地修改、弱网测试、模拟错误状态码、屏蔽网页抓包、关注接口及简单的压力测试等,覆盖了从Web到App再到虚拟机的证书配置与抓包操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

charles的证书下载(web)

默认情况下,charles不能解析https协议的接口,里面的请求和响应数据都是乱码格式,所以我们需要下载ssl证书,来获取里面的数据

1:点击help,选中ssl Proxying ,点击Install Charles Root Certificate

2:点击”安装证书”按钮

3:点击”下一步”按钮

4:选中”将所有的证书都放入下列存储”,点击”游览”按钮

5:选中”受新任的根证书颁发机构”,点击”确定”按钮

6:点击”下一步”按钮

7:点击”完成”按钮

8:界面弹出”导入成功”弹框

9:点击”proxy”按钮,选中Proxy Settings…

10:勾选允许传输http代理,接着点击”OK”按钮

11:点击’proxy”按钮,选中SSL Proxyig settings..

12:点击勾选运行代理,点击“add”按钮

13:填写Host和Port都为*,正则表达式为匹配所有,再点击”OK”按钮

14:点击”OK”按钮

15:重启Charles,即可

16:验证是否可以获取web端的https接口

17:打开Charles

18:打开游览器输入数据

19:查看Charles,能获取htpps的包数据,即可对web端进行抓包

Charles的功能操作

断点测试

一,breakpoints修改(request)

  • 鼠标右击,选择breakpoints(允许本接口使用breakpionts功能)
  • 开始设置断点值
  • query一定要填成*
  • 输入完成后点击OK按钮保存设置

重新请求接口,Charles的界面变为可编辑状态,修改请求参数,执行请求

关掉breakpoint,点击abort

如果点击了cancel,只关闭此次编辑,下次访问接口时还会进入breakpoint页面

二,breakpoints,修改response

接口处鼠标右击,选择breakpoints,允许本接口使用breakpoints功能

开始设置断点值

输完以后记得点OK保存设置

重新请求接口,Charles的界面变为可编辑状态,修改请求参数,执行请求

刷新页面,请求接口,返回值是上一部已经修改好的值

关掉breakpoints,点击abort

如果点击了cancel,只能关闭此次编辑,下次访问此借口是还会进入breakpoints界面

本地修改

对于maplocal功能的理解:

接口返回值通过抓包工具处理成了 一个本地文件。这个本地文件中的设定值被作为接口返回值了。

response内容,保存为.txt 文件,存在电脑本地。

 

注意:

保存为txt 后,将文件“另存为”编码方式选择utf-8,否则接口可能无法识别汉字导致出现乱码

修改response指向(选中需要修改response值的接口 后点击右键,选中maplocal功能)

注意:记得点击【OK】键才能将配置保存成功!!!

3.修改txt文件中 需要修改的字段值,保存

4.重新请求此接口,此时接口返回值已经是 txt文件中的期望值了

5.不用的时候,关掉maplocal。

弱网测试

模拟超慢网速(会导致接口数据返回超时的那种...)

设置带宽和延迟时间(毫秒)

注:可以根据下图中的翻译体会下导致网络延迟的原因:

加载浏览器网页,查看网络延迟

模拟403/404

1.tools——>blacklist

2.允许启用黑名单功能,选择接口返回错误的形式(404 或者403),添加接口地址并保存

注:【blocking connection】 选项可以选择“drop connection”或者 “403 respose”.前者接口会直接返回404错误,后者接口返回403错误

3.选中需要返回404/403的接口,点击【ok】再次请求效果如下(接口返回404):

屏蔽web网页的抓包信息

应用场景:屏蔽web网页的抓包信息

proxy-->windows proxy(前面没有对勾,就不会抓到 PC浏览器的包)

proxy-->macOS proxy(mac电脑)

关注接口

抓包列表中有好多抓包结果是我们不会关注的,用下面的方法可以让这些我们不关注的接口在列表中隐藏

添加关注的接口

注:host : *baidu* 代表 host中含有"baidu"字符的所有host

      protocol :http 或者https. 如果什么都选,代表 两中协议都会生效,相当于二者兼选

      port:  protocol为http 时填  80  ,protocol 为https时填 443  。什么都不填也没有关系。

后点击OK保存设置

 

重新抓包结果

不在上一步配置中的接口,都会隐藏在other host中

简单的压力测试

接口请求次数、并发量、请求延迟时间均可配置

1.选中需要进行测试的接口,鼠标右键 选中【repeat advance】

2.下面的图中,选择了1个接口,每次迭代中1个接口请求,迭代10次(总计请求10次接口),

每个接口每次并发1次请求

 

charles的证书下载(app)

默认情况下,charles不能解析https协议的接口,里面的请求和响应数据都是乱码格式,所以我们需要下载ssl证书,来获取里面的数据

前提:保证电脑和手机在同一网络段(手机和电脑连接同一个wifi/热点)

1:在proxy中找到proxy settings

2:设置端口port以及勾选Enale transparent HTTP proxying

3:在proxy中找到SSL proxy settings

4:新增https对应的host以及端口号

5:点击help选择ssl Proxying,点击第三个(下载移动端证书)

6:弹出对应的ip地址和端口号

7:设置移动端代理

  • wifi,点击进入设置代理
  • ip和端口号

8:使用手机下载ssl证书,用手机游览器输入:chls.pro/ssl,前往

9:点击”立即下载”按钮

10:下载完成之后进行安装即可

11,验证能否抓取到app端的接口

12:手机输入123查询

13:获取到该接口信息

charles的证书下载(虚拟机)

1:第一步:打开虚拟机设备

2:第二步:去掉window peoxy的勾选项(对app端测试)

3:点击proxy选中proxy Setting

4:启动http代理端口(默认8888)

5:在help中选中SSL Proxying 中的Mobile Device 安装

6:显示如下图所示信息

7:点击设置按钮

8:点击”wifi”

9:长按已连接的WiFi

10:点击”修改网络”

11:勾选”高级选项”

12:点击代理下拉框

13:选中”手动”

14:填写代理信息(ip和端口信息)

15:点击”保存”

16:打开模拟器中的游览器

17:输入对应的网址:chls.pro/ssl ,下载证书

18:点击下载的证书

19:给证书命名并确定

20:显示证书已安装

21:打开模拟器上的app,观察Charles中捕获的接口

22:以上为模拟器上安装证书操作,接下来就可以捕获接口操作了

 

 

 

03-13
### Charles 工具概述 Charles 是一款广泛应用于PC端的网络封包截取工具,主要用于移动开发中的网络通信调试。通过该工具可以有效地监控并分析HTTP/HTTPS请求和响应数据流,帮助开发者理解应用程序与服务器之间的交互过程[^1]。 #### 主要用途 - **移动端开发调试**:当涉及到iOS或Android设备上的应用开发时,Charles能够捕获这些平台发出的所有HTTP(S)流量。 - **第三方API接口测试**:对于集成外部服务的应用程序而言,利用Charles可深入研究不同服务商所提供的RESTful API的具体行为模式。 - **安全协议解析**:借助内置的支持,即使面对加密传输层(即TLS),依然可以通过适当配置实现对HTTPS会话内容的有效读取[^2]。 ### 使用准备 在正式开始之前,需完成如下几项准备工作: - **软件下载与安装**:前往官方网站获取最新版本的Charles,并按照提示完成整个安装流程。 - **代理环境搭建**:无论是Mac还是Windows操作系统下,都需要正确设定系统的网络代理指向本地运行着的Charles实例;同时确保目标移动设备也连接到了相同的Wi-Fi热点上以便共享同一套代理规则[^3]。 ### 基础操作指南 一旦上述条件满足,则可以根据实际需求执行以下常见任务: - **查看实时流量**:启动Charles后,默认即可看到当前正在发生的全部HTTP事务列表视图。 - **启用SSL解密**:针对受保护的数据交换场景,先导入由Charles自动生成的信任根证书至浏览器或其他客户端环境中,再开启对应的选项开关以允许其处理经过签名的安全链接。 - **设置断点拦截**:此特性允许用户中途暂停特定类型的请求发送动作,进而手动修改参数或者伪造返回结果来进行更灵活的功能验证。 ```bash # Windows命令行中检查本机IP地址的方法之一 ipconfig | findstr IPv4 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值