当前位置: 首页 > news >正文

charles功能

charles工作原理
  • 截获真实客户端的HTTPS请求,伪装客户端向真实服务端发送HTTPS请求
  • 接受真实服务器响应,用Charles自己的证书伪装服务端向真实客户端发送数据内容

前置条件
  1. charles代理配置
  2. 端代理配置
  3. 端安装SSL证书
  4. Charles SSL代理配置

charles代理配置

  1. 进入charles,点击Proxy -> Proxy Setting -> Proxies,输入Port代理端口号(默认8888),点击OK。

端的代理设置

  • 获取Charles的IP信息:Help -> Local IP Address -> IP Address下获取Charles的IP
  1. windows端的代理配置:Chrome 浏览器 -> 进入设置页面 -> 顶部的搜索框中输入“代理” -> 点击“打开您计算机的代理设置” ->  开启【使用代理服务器】开关 ->  “地址”栏中输入 Charles的IP,在“端口”栏中输入8888; -> 点击保存

  2. mac端代理配置:系统偏好设置 -> 网络 -> 高级 -> 代理 -> 勾选web代理 -> 输入web代理服务器下的charles的ip和端口号;当MacOS客户端与运行Charles软件工具的电脑是同一台电脑时,可以通过快捷代理设置方式进行设置,打开Charles工具后,选择“Proxy”菜单中的“macOS Proxy”选项;

  3. ios端的代理配置:设置 -> 无线局域网 -> 点击当前已连接无线网名称(确保手机网络和Charles代理的网络在同一个局域网中,最好是连接同一个网络) -> 在HTTP代理的配置代理中选择“手动”  -> 输入服务器ip地址和端口号  -> 点击存储;

  4. Android端代理配置同ios差不多;客户端首次连接 ,Charles会提示是否允许其连接,点击Allow

端安装SSL证书

在没有安装好SSL证书之前,抓取的HTTPS报文信息都乱码

  • Windows 证书配置

  1. 打开charles,选择“help”->“SSL Proxying”->“Install Charles Root Certificate”
  2. 在打开的证书框中,点击“安装证书”,选择“本地计算机”,点击“下一步”
  3. 选择“将所有证书都存放下列存储”,再点击“浏览”
  4. 选择“受信任的根证书颁发机构”,点击“确定”->“下一步”->“完成”
  • MacOS 证书配置

  1. 打开Charles,选择“Help”->“SSL Proxy”->“Install Charles Root Certificate” ->点击证书选择始终信任;

  • IOS 证书配置

  1. 在电脑上运行Charles, 且IOS手机设置好代理,在手机浏览器中地址栏输入:http://charlesproxy.com/getssl,在设置中点击“已下载描述文件”,点击右上角“安装”;

  2. 返回到“通用”页面,选择“关于本机”,点击“证书信任设置”,启用Charles Proxy CA证书并确认;

  • android安装SSL证书

Charles SSL代理配置

  1. 在Charles窗口中点击菜单“proxy”->“SSL proxying setting”
  2. 在打开的设置窗口中勾选“Enable SSL Proxying”,点击“OK”

Charles主要功能
  • 使用Charles来分析前后端问题

  • 使用Charles模拟弱网测试环境
  1. 在Charles窗口中点击菜单“Proxy”->“Throttle Setting”
  2. 在打开的设置窗口中勾选“Enable Throttling”
  3. 在“Throttle preset”下拉框中选择对应的网络类型,点击“OK”
  • 使用Charles断点构建异常的测试场景
  1. 右击接口链接,选择“Breakpoints”
  2. 在浏览器刷新对应接口的页面,此时会自动跳转到Charles并显示出接口请求信息
  3. 点击“Edit Request”,修改请求的信息,点击“Execute”
  4. 点击“Edit Response”
  5. 在数据格式栏中选择合适的显示格式,比如“Json”
  6. 修改对应的数据,点击“Execute”
  7. 回到浏览器查看数据应该为修改之后的Response的信息

  • 支持流量控制
  • 支持接口并发请求
  • 支持重发网络请求,方便后端调试
  • 支持修改网络请求参数
  • 支持网络请求的截获并动态修改

文章转载自:

http://b2XF5N97.dzqyn.cn
http://qflzVw98.dzqyn.cn
http://oZVsvojL.dzqyn.cn
http://FyQUSLPp.dzqyn.cn
http://SqpoqYEC.dzqyn.cn
http://RMCwVP7c.dzqyn.cn
http://zGi6JV5r.dzqyn.cn
http://DSVMyjiC.dzqyn.cn
http://nxUojYU6.dzqyn.cn
http://vDTijjuQ.dzqyn.cn
http://EXPAvPMp.dzqyn.cn
http://iaOgYlbD.dzqyn.cn
http://N9CdyoTg.dzqyn.cn
http://ThXarloc.dzqyn.cn
http://SlPhZs14.dzqyn.cn
http://VAtoBqnm.dzqyn.cn
http://JA1BBLql.dzqyn.cn
http://wMWJYzim.dzqyn.cn
http://V7kBZYtJ.dzqyn.cn
http://J1zePNTU.dzqyn.cn
http://Pxn8TZPY.dzqyn.cn
http://5upTasPH.dzqyn.cn
http://sjSkAsIu.dzqyn.cn
http://AtdPLG9h.dzqyn.cn
http://DWiQsoTN.dzqyn.cn
http://vHJk03Ql.dzqyn.cn
http://X49BeNsW.dzqyn.cn
http://xuRs6dRJ.dzqyn.cn
http://BMlvNrGh.dzqyn.cn
http://2sqmyLj3.dzqyn.cn
http://www.dtcms.com/a/382147.html

相关文章:

  • Ceph OSD 元数据信息
  • Stanford CS336 | Assignment 2 - FlashAttention-v2 Pytorch Triotn实现
  • 【Docker】容器
  • C++ 类型推导(第一部分)
  • 联邦学习模型完成之后在验证集上面,如何判断输出正确与否
  • 优选算法---链表
  • 从理据到算法:认知语义学象似性对人工智能深层语义分析的重塑与前瞻
  • 39.网络流入门
  • PTQ 模型 量化方法
  • 基于Spring Boot的家政服务管理系统+论文示例参考
  • uniapp封装长按一直触发事件和松开后触发一次的事件(自定义事件)
  • Unity核心概念⑦:Transform
  • 【数据行业发展】可信数据空间~数据价值的新型基础设施
  • 使用“洋葱架构”构建单体应用
  • DAY 27 函数专题2:装饰器-2025.9.14
  • 浅析Linux进程信号处理机制:基本原理及应用
  • php学习(第五天)
  • C盘清理技巧分享的技术文章大纲
  • PINN物理信息神经网络驱动的三维声波波动方程求解MATLAB代码
  • 深度学习优化器进化史:从SGD到AdamW的原理与选择
  • 计算机视觉(opencv)实战十九——角点检测图像特征(Harris 角点、Shi-Tomasi 角点)
  • 【限流器设计】固定窗口计数法
  • Estimator and Confidence interval
  • 构建AI智能体:三十二、LangChain智能体:打造会使用工具(Tools)、有记忆(Memory)的AI助手
  • AI内容标识新规实施后,大厂AI用户协议有何变化?(六)科大讯飞
  • 机械应答到自然交流,声网AI陪练改变我的口语
  • 贪心算法应用:信用评分分箱问题详解
  • 【Spring AI】Filter 简单使用
  • html各种常用标签
  • Linux 进程信号之信号的捕捉