Charles基本使用

charles-青花瓷

介绍

它是一款基于HTTP协议的代理服务器,通过成为电脑或者浏览器的代理,然后截取请求和请求结果达到分析抓包的目的。特点:跨平台,半免费

工作原理:

在这里插入图片描述

  • 用途

    1.分析前后端的问题(判断是前端还是后端出现了问题)

    2.用来模拟弱网测试环境

    3.用断点构建异常的测试场景

    • 支持HTTP及HTTPS代理
    • 支持流量控制
    • 支持接口并发请求
    • 支持重发网络请求
    • 支持断点调试

前置步骤:

1、需要运行Charles并配置代理

2、在客户端上面需要配置代理

步骤:

1、由客户端发送请求

2、Charles接收 再发送给服务端

3、服务端返回请求结果给Charles

4、由Charles转发给客户端

对比Fiddler的优点:

  • Charles能够支持linux、MacOs
  • Charles支持按域名和按接口查看报文,简洁明了
  • Charles支持反向代理
  • Charles网络限速可选择网络类型
  • Charles可以解析AMF协议

使用

组件页面介绍

在这里插入图片描述

主导航介绍:
在这里插入图片描述

请求栏介绍:

在这里插入图片描述

请求数据栏介绍:
在这里插入图片描述

Charles代理设置

img

Charles访问控制

设置可以访问的ip,下面那个有对钩的选项选中表明没添加的ip在访问时会弹出询问框

img

客户端-windows代理设置

1、在Chrome浏览器中输入Chrome://setting

2、在搜索框中输入“代理”

3、点击“打开您计算机的代理设置“

img

4、在手动设置代理中开启代理

5、在地址输入框中输入Charles的IP地址以及端口

6、点击“保存”,关闭页面。

img

客户端-MacOS代理设置

第一步:

img

第二步:

img

第三步:

img

客户端-MacOS快捷代理设置

img

客户-IOS手机代理设置

1、在I0S手机中选择“设置”-“无线局域网”

2、点击已连接的无线网络名称

3、在HTTP代理的配置代理中选择“手动”

4、输入服务器IP地址及端点,点击“存储”

img

客户端-Android手机代理设置

1、在Android手机中选择“设置”-“WLAN”

2、长按已连接的无线网络名称,点击“修改网络”

3、勾选“显示高级选项”

4、在代理选择项中选择“手功’

5、输入服务器IP地址及端口,点击“存储”

img

应用

抓包分析问题

当客户端请求服务端的时候,获取到请求的http包,可能会出现问题?这两个问题可能是前端的问题也有可能是后端的问题!!

img

例如:

img

抓包分析实现的步骤:

img

img

这是后台响应回来的错误信息,说明是后台的原因;但是后台只响应了一条信息,而前端页面却显示两条错误信息,说明前端页面处理异常的时候逻辑有问题;所以说前后端都有问题!!

img

Https抓包

使用charles抓取Https请求报文的时候,报文会出现乱码,解决办法是需要安装SSL证书

img

Windows证书配置

img

第一步:

img

第二步:

img

第三步:
img
第四步:
img
第五步:
img
第六步:
img
最后提示:
img

Charles Https代理配置

步骤一:在Charles窗 口中点击菜单“proxy” -> “SSL proxying setting’
步骤二:在打开的设置窗口中勾选“Enable SSL Proying’

步骤三:然后点击include下方的Add,2个输入框第一个不填,第二个填星号步骤四:点击“OK”。

img

MacOS证书配置

img
第一步:
img
第二步:
img
第三步:
img
第四步:
img
配置完成后,就不会出现乱码
img

IOS证书配置

img
img
第一步:设置好IOS手机代理
第二步:
img
第三步:
img
img
第四步:
img
第五步:
img
第六步:
img
img
img
第七步:
img
img
第八步:
img
img
配置成功
img

Charles流量配置

步骤一:在Charles窗 口中点击菜单“Proxy" ->“Throttle Setting”
步骤二:在打开的设置窗口中勾选“Enable Throttling’
步骤三:在“Throttle preset”下拉框中选择对应的网络类型
步骤四:点击“OK’
img
img

弱网测试的实例

img
流量配置之前:
img
流量配置之后:
img
img

结果分析:

img

Charles断点配置

作用:用来构建异常的测试场景

1、右击接口链接,选择“Breakpoints”

2、在浏览器刷新对应接口的页面

3、此时会自动跳转到Charles并显示出接口请求信息

4、点击“Edit Request”,修改请求的信息,点击“Execute“

img

5、点击“Edit Response”

6、在数据格式栏中选择合适的显示格式,比如“Json”

7、修改对应的数据,点击“Execute ”

8、回到浏览器查看数据应该为修改之后的Response的信息

img

断点调试实例

img

第一步:开启断点调试

img

第二步:

img

第三步:

img

返回给页面空字符串

img

第四步:

img

Charles是一个用于HTTP代理和反向代理的开源工具。它允许开发人员在计算机和互联网之间查看和编辑HTTP和HTTPS请求。以下是Charles的一些基本用法: 1. 代理设置:启动Charles后,需要将你的设备或浏览器配置为使用Charles作为代理服务器。可以在Charles的“Proxy”菜单下找到“Proxy Settings”选项来配置代理设置。 2. 查看请求:当设备或浏览器通过Charles进行网络请求时,你可以在Charles的“Session”面板上查看和监控这些请求。你可以看到请求的URL、请求头、请求体以及服务器的响应。 3. 编辑请求:在Charles的“Session”面板上,你可以右键单击某个请求并选择“Edit”来编辑请求头和请求体。这对于调试和修改请求非常有用。 4. 拦截请求:Charles允许你拦截和修改请求,以测试不同的场景。你可以在“Tools”菜单下找到“Breakpoints”选项,设置断点来拦截请求,并对请求进行修改。 5. SSL代理:对于HTTPS请求,Charles可以作为中间人来解密HTTPS流量,并以明文形式显示在界面上。这对于调试和分析加密流量非常有用。 6. 规则设置Charles允许你设置规则来自动化处理请求。你可以在Charles的“Tools”菜单下找到“Rewrite”选项,通过添加规则来修改请求和响应。 这些是Charles的一些基本用法,它提供了强大的功能来帮助开发人员进行HTTP请求的调试和分析。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值