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

【Charles 抓包工具笔记】(自用复盘版)

Charles 抓包工具笔记自用复盘版适用场景HTTP/HTTPS 抓包分析、接口调试、弱网测试、移动端测试最后更新2026-04-09一、Charles 简介1.1 基本信息Charles中文名“青花瓷”是一款基于 HTTP 协议的代理服务器。作用通过成为电脑或浏览器的代理截取请求和响应数据实现抓包分析。官网https://www.charlesproxy.com/试用30 天免费试用过期后仍可启动但每次只能使用 30 分钟。1.2 工作原理简述客户端浏览器/App请求 → Charles代理→ 服务器 → Charles → 客户端。二、安装与基础配置2.1 下载安装从官网下载对应系统版本Windows/macOS/Linux。安装完成后启动 Charles。2.2 浏览器代理设置以 Firefox 为例建议使用 Firefox 浏览器代理设置独立不影响系统其他应用。Firefox → 设置 → 网络设置 → 手动代理配置HTTP 代理127.0.0.1端口8888Charles 默认端口勾选“为所有协议使用相同代理”完成后浏览器访问 http://charlesproxy.com/get 可检查是否正常。三、Charles 核心操作3.1 开启代理抓包Charles 启动后默认开启代理Proxy→Windows Proxy/macOS Proxy。确保Proxy→Proxy Settings中 HTTP 代理勾选端口为8888。浏览器访问任意网址Charles 中即出现请求记录。3.2 断点Breakpoints—— 修改请求/响应应用场景模拟异常数据、绕过前端校验、篡改接口返回。操作步骤Proxy→Breakpoints Settings→ 勾选Enable Breakpoints。点击Add设置断点条件Protocolhttp或httpsHost目标域名如api.example.comPort一般留空或*Path请求路径勾选Request和/或Response表示拦截请求和响应确认后在浏览器触发对应请求。Charles 弹出断点编辑窗口修改Request数据 → 点击Execute修改Response数据 → 点击Execute所有断点执行完毕后关闭断点功能取消勾选Enable Breakpoints。注意如不修改响应直接点击Execute放行。3.3 过滤Filter—— 只显示指定域名目的避免抓包列表被无关请求淹没。方法一临时过滤在 Charles 界面下方的 Filter 输入框中直接输入关键词如api.xxx.com。方法二永久过滤Proxy→Recording Settings→Include标签页。点击Add填入协议、主机、端口、路径主机必填。确认后Charles 只显示匹配 Include 规则的请求。3.4 弱网测试Throttle应用场景模拟 2G/3G/4G 网络环境测试应用在网络不佳时的表现。操作步骤Proxy→Throttle Settings→ 勾选Enable Throttling。选择预设网络如3G或自定义带宽、延迟、丢包率。勾选Only for selected hosts可针对特定域名限速。开始测试 → 完成后关闭Enable Throttling。四、移动端手机/模拟器抓包4.1 前提条件电脑和手机/模拟器连接同一个 WiFi。电脑 IP 地址可在命令行用ipconfig或ifconfig查看。Charles 允许远程连接Proxy→Proxy Settings→ 勾选HTTP Proxy并勾选Allow remote computers to connect。-4.2 手机端代理设置手机 WiFi → 修改网络 → 开启代理手动主机名电脑 IP端口8888保存后手机上的 HTTP 请求会出现在 Charles 中。如果有提示勾选运行允许pc端接入4.3 抓取 HTTPS 请求解决unknown问题若抓包出现unknown说明是 HTTPS 请求需要安装 SSL 证书。4.3.1 电脑端安装 Charles 根证书Help→SSL Proxying→Install Charles Root Certificate。点击“安装证书” → 选择“本地计算机” → “将所有证书放入下列存储” → 选择“受信任的根证书颁发机构”。完成导入后重启 Charles。4.3.2 手机端安装证书Android 通用步骤手机连接 Charles 代理后浏览器访问chls.pro/ssl下载证书.pem文件。安装证书Android 7.0 以下直接点击证书文件按提示安装。Android 7.0 及以上系统限制用户证书需要Root 权限并将证书安装为系统证书见下文。4.3.3 安装 OpenSSL 并配置环境变量Windows 示例在 Android 7.0 上将 Charles 证书安装为系统证书需要使用 OpenSSL 计算证书的 hash 值。下载 OpenSSL推荐使用开源 Windows 版Win64OpenSSL-3.x.x.exe可从 https://slproweb.com/products/Win32OpenSSL.html 下载。或通过包管理器如choco install openssl/winget install openssl。安装步骤1.右键安装包 以管理员身份运行安装程序。2. 选择安装路径例如C:\Program Files\OpenSSL-Win64。3. 一路 Next完成安装弹出页面直接关闭即可。配置环境变量4. 右键“此电脑” → 属性 → 高级系统设置 → 环境变量。5. 在系统变量中找到Path点击“编辑”。6. 新建 → 添加 OpenSSL 的bin目录路径例如C:\Program Files\OpenSSL-Win64\bin。7. 确定保存所有窗口。验证安装打开新的命令提示符CMD或 PowerShell输入openssl version应显示 OpenSSL 版本信息。4.3.4 Android 7.0 安装系统证书以 MuMu 模拟器为例步骤概览从chls.pro/ssl下载charles-proxy-ssl-proxying-certificate.pem。使用 OpenSSL 计算证书 hash 值并重命名。·不要忘记后缀有一个.0!!!!!通过 adb 将证书推送到模拟器的/etc/security/cacerts/目录。修改证书权限为644。详细命令假设已安装 OpenSSL 和 ADB# 计算 hash 值openssl x509-subject_hash_old-incharles-proxy-ssl-proxying-certificate.pem# 输出第一行类似 3a1078b3# 重命名证书文件ren charles-proxy-ssl-proxying-certificate.pem 3a1078b3.0# 通过 adb 推送到模拟器需 root 权限且 system 可写adb root adb remount adb push 3a1078b3.0 /etc/security/cacerts/# 修改权限adb shellchmod644/etc/security/cacerts/3a1078b3.0模拟器开启 root在 MuMu 多开器/设置中开启 Root 权限。4.3.5 iOS 证书信任iOS 10.0 安装证书后需前往设置 → 通用 → 关于本机 → 证书信任设置中开启 Charles 证书开关。如不生效重启手机重试。4.4 手机设置代理后无法上网现象手机无法访问外网。原因Charles 默认开启了外部请求阻止黑名单。解决Proxy→Access Control Settings→ 添加手机的 IP 地址或添加0.0.0.0/0允许所有仅测试环境使用。五、常见问题速查问题原因解决方法抓包显示unknownHTTPS 请求未安装证书安装 Charles 根证书电脑手机手机无法上网未添加手机 IP 到访问控制列表Proxy→Access Control Settings添加手机 IPAndroid 7.0 无法安装用户证书系统限制Root 后安装为系统证书见 4.3.4证书安装后仍显示unknownSSL 代理未开启Proxy→SSL Proxying Settings勾选 Enable并添加 Host/Port:表示全部Charles 启动报端口占用端口 8888 被其他程序占用Proxy→Proxy Settings修改端口或在任务管理器结束占用进程openssl不是内部或外部命令未安装或环境变量未配置安装 OpenSSL 并配置 PATH见 4.3.3六、实用技巧快速清空记录点击 Charles 工具栏的 按钮或Edit→Clear。保存会话File→Save Session便于后续分析。重放请求右键某请求 →Repeat或Repeat Advanced。Map LocalTools→Map Local将远程请求映射到本地文件mock 数据。Throttle 快速开关点击工具栏的图标。

相关文章:

【Charles 抓包工具笔记】(自用复盘版)

📡 Charles 抓包工具笔记(自用复盘版)适用场景:HTTP/HTTPS 抓包分析、接口调试、弱网测试、移动端测试 最后更新:2026-04-09一、Charles 简介 1.1 基本信息 Charles:中文名“青花瓷”,是一款基于…...

Claude Code 从零复刻教程 - 完整大纲

Claude Code 从零复刻教程 - 完整大纲 本教程面向有 JavaScript 基础的开发者,通过 12 篇系列文章,从零构建一个类似 Claude Code 的 AI 编程助手 CLI 工具。 目录 教程简介技术栈系列大纲每篇教程结构学习路径 教程简介 什么是 Claude Code&#xff1…...

拆解政务知识库落地:从0到日均万次应答的实战手记

在基层政务服务中,“这个政策怎么解读?”“社保卡丢了去哪补办?”这类问题每天被重复成百上千次。政策法规分散在数十个系统中,居民问不清,工作人员也答不准。如何在不增加编制的前提下,让90%的重复性问题被…...

【限时技术解禁】GraalVM静态镜像内存优化速查表(含JFR+Native Memory Tracking双验证脚本),仅开放72小时下载

第一章:GraalVM静态镜像内存优化快速接入全景概览GraalVM 静态镜像(Native Image)通过提前编译(AOT)将 Java 应用编译为独立、无 JVM 依赖的原生可执行文件,在启动速度与内存占用方面具备显著优势。然而&am…...

“.NET 11 + ONNX Runtime 1.18 + Triton集成”三重加速组合拳:某全球Top3药企临床辅助诊断系统P99延迟压至17ms的完整链路揭秘

第一章:“.NET 11 ONNX Runtime 1.18 Triton集成”三重加速组合拳:某全球Top3药企临床辅助诊断系统P99延迟压至17ms的完整链路揭秘该系统面向高并发、低延迟的病理图像实时推理场景,需在单次请求中完成多模态(HE染色切片免疫组化…...

SecGPT-14B私有化部署:企业内网安全使用OpenClaw的方案

SecGPT-14B私有化部署:企业内网安全使用OpenClaw的方案 1. 为什么需要内网专属AI助手 去年我在某金融机构参与了一个敏感项目,客户要求所有数据处理必须在隔离网络中完成。当我第一次尝试用公有云API调用AI能力时,安全团队立即叫停了整个流…...

PowerMeter:嵌入式电能计量开源库设计与实现

1. 项目概述PowerMeter 是一款面向嵌入式电能计量场景的轻量级开源库,专为基于 ZMPT101B 电压传感器与 ZMCT103C 电流传感器构建的单相交流电参数测量系统而设计。该库不依赖特定硬件平台(如 Arduino、ESP32 或 STM32),其核心抽象…...

SQL如何计算分组内的加权平均值_使用SUM与除法运算

<p>分组加权平均 SUM(值 * 权重) / NULLIF(SUM(权重), 0)&#xff0c;需在 GROUP BY 下按组分别计算分子分母&#xff1b;权重为NULL时SUM自动忽略&#xff0c;应显式过滤或处理&#xff1b;避免重复SUM影响性能。</p>用 SUM() 和除法算分组加权平均&#xff0c;核…...

Vibe Coding 程序员何去何从?最大的价值是质疑能力

当 AI 成为强力执行者&#xff0c;细节做得好不好、快不快&#xff0c;都不再重要。模型会越来越智能、越来越快。但真正决定你能用好 AI 还是被 AI 牵着走的&#xff0c;是你的思考能力。 专业能力的本质是质疑能力 很多人以为用好 AI 的关键是写好提示词&#xff08;Prompt&…...

重新定义翻译质量评估:COMET的智能引擎与行业变革

重新定义翻译质量评估&#xff1a;COMET的智能引擎与行业变革 【免费下载链接】COMET A Neural Framework for MT Evaluation 项目地址: https://gitcode.com/gh_mirrors/com/COMET 在全球化内容生产的浪潮中&#xff0c;翻译质量评估长期被一个认知误区所困扰——许多…...

什么是引线键合(WireBonding)

引线键合&#xff08;WireBonding&#xff09;引线键合是一种使用细金属线&#xff0c;利用热、压力、超声波能量为使金属引线与基板焊盘紧密焊合&#xff0c;实现芯片与基板间的电气互连和芯片间的信息互通。在理想控制条件下&#xff0c;引线和基板间会发生电子共享或原子的相…...

Windows Defender Remover终极指南:彻底释放系统性能的3种方法

Windows Defender Remover终极指南&#xff1a;彻底释放系统性能的3种方法 【免费下载链接】windows-defender-remover A tool which is uses to remove Windows Defender in Windows 8.x, Windows 10 (every version) and Windows 11. 项目地址: https://gitcode.com/gh_mir…...

易基因|PBJ/IF10.5:西南大学吕典秋课题组揭示m6A甲基化修饰调控马铃薯耐盐性的新机制

​​大家好&#xff0c;这里是专注表观组学十余年&#xff0c;领跑多组学科研服务的易基因。 近日&#xff0c;Plant Biotechnology Journal杂志在线发表了由西南大学吕典秋课题组撰写的“StALKBH10B-mediated RNA m6A modification inhibits potato salt tolerance by target…...

如何处理死锁异常_ORA-00060捕获与重试机制设计

ORA-00060是死锁&#xff0c;非单纯竞争&#xff1b;Oracle检测到多个会话互持对方所需锁并主动回滚其中一个事务&#xff0c;需通过trace文件分析Deadlock graph定位具体行锁冲突及session&#xff0c;不可盲目重试。ORA-00060 是死锁还是竞争&#xff1f;先看日志里真正冲突的…...

不换设备、不重写程序:耐达讯自动化网关如何实现CC-Link IE转Modbus TCP的高效互通?

在工业4.0与智能制造加速落地的当下&#xff0c;工厂自动化系统的集成复杂度日益攀升。一个普遍存在的工程痛点在于&#xff1a;控制层往往采用以三菱电机为代表的CC-Link IE高速工业以太网&#xff0c;追求微秒级的同步与海量数据吞吐&#xff1b;而现场设备层却依然大量存留着…...

LangChain教程-、Langchain基础磐

简介 AI Agent 不仅仅是一个能聊天的机器人&#xff08;如普通的 ChatGPT&#xff09;&#xff0c;而是一个能够感知环境、进行推理、自主决策并调用工具来完成特定任务的智能系统&#xff0c;更够完成更为复杂的AI场景需求。 AI Agent 功能 根据查阅的资料&#xff0c;agent的…...

OpenClaw安全实践:Gemma-3-12b-it本地化保障敏感数据处理

OpenClaw安全实践&#xff1a;Gemma-3-12b-it本地化保障敏感数据处理 1. 为什么选择本地化部署 去年我在处理一批财务数据时&#xff0c;曾尝试使用某云端大模型服务进行报表分析。当系统提示"您的数据将被传输至第三方服务器进行处理"时&#xff0c;那种对敏感信息…...

性价比高的水泥压力板哪家技术强

在建筑材料市场中&#xff0c;水泥压力板凭借其诸多优势&#xff0c;如防火、防潮、隔音等&#xff0c;成为众多建筑项目的理想选择。对于追求性价比的客户来说&#xff0c;选择一家技术实力强的水泥压力板品牌至关重要。兴达成就是这样一家在市场上具有较高声誉的品牌&#xf…...

StructBERT中文相似度模型效果展示:LCQMC与ChineseSTS精准匹配案例集

StructBERT中文相似度模型效果展示&#xff1a;LCQMC与ChineseSTS精准匹配案例集 1. 引言&#xff1a;当AI能读懂句子的“言外之意” 你有没有遇到过这样的场景&#xff1f;在搜索引擎里输入一个问题&#xff0c;结果返回的答案和你问的完全不是一回事。或者&#xff0c;你想…...

智能营销新纪元:揭秘星图销冠系统如何用AI自动化重塑企业获客生态

在数字化转型浪潮席卷各行各业的今天&#xff0c;企业获客成本持续攀升&#xff0c;传统营销方式疲态尽显。寻找一家真正专业AI企业、服务好AI服务商&#xff0c;引入一套能打通公域引流与私域转化全链路的智能系统&#xff0c;已成为众多市场决策者的核心诉求。市场上声称能提…...

如何划分接口文档?

&#x1f345; 点击文末小卡片&#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快1、首先最主要的就是要分析接口测试文档&#xff0c;每一个公司的测试文档都是不一样的。具体的就要根据自己公司的接口而定&#xff0c;里面缺少的内容自己需要与开…...

OpenClaw性能调优实战:提升Kimi-VL-A3B-Thinking多模态响应速度的5个技巧

OpenClaw性能调优实战&#xff1a;提升Kimi-VL-A3B-Thinking多模态响应速度的5个技巧 1. 问题背景与性能瓶颈分析 最近我在本地部署了Kimi-VL-A3B-Thinking多模态模型&#xff0c;并通过OpenClaw与之对接&#xff0c;构建了一个自动化图文处理的工作流。但在实际使用中发现&a…...

Glide:Android图片加载的瑞士军刀,真的有这么神?

Glide&#xff1a;Android图片加载的瑞士军刀&#xff0c;真的有这么神&#xff1f; Glide 是什么&#xff0c;为何选择它 在 Android 开发的世界里&#xff0c;图片加载是一个绕不开的重要环节。想象一下&#xff0c;在一个社交类 APP 中&#xff0c;用户的头像、发布的照片&a…...

基于Arm Cortex-M7内核GD32H7

基于Arm Cortex-M7内核&#xff0c;主频高达750MHz&#xff0c;并配备了高速大容量内存架构&#xff0c;旨在以“超高算力”与“实时通信”能力&#xff0c;为伺服控制、数字电源、智能家居&#xff08;885478&#xff09;等下一代智能装备提供核心硬件基础。 性能铁三角&#…...

查老板信息免费?3款工具深度功能对比(附避坑指南)

查老板信息免费的方法有很多&#xff0c;但大多数人都只停留在基础工商信息层面。真正能免费查到深度信息&#xff08;关联企业、风险记录、AI解读&#xff09;的工具其实不多&#xff0c;我最近亲测了几款常用工具&#xff0c;发现风鸟企业查询平台在免费深度功能方面表现突出…...

沈阳户外路灯厂家哪家好

大家好&#xff0c;我是你们的老朋友小李。今天咱们聊聊沈阳的户外路灯市场&#xff0c;尤其是哪家厂家值得信赖。在众多品牌中&#xff0c;中领乾路灯凭借其卓越的产品质量和贴心的服务&#xff0c;逐渐成为了行业的佼佼者。接下来&#xff0c;我会从几个方面来详细分析一下&a…...

企业为什么开始用小程序替代官网?

企业为什么开始用小程序替代官网?一、核心结论企业开始用小程序替代传统官网&#xff0c;本质上不是“技术替代”&#xff0c;而是获客方式与用户行为的变化。当用户从“搜索访问网站”转向“在平台内直接完成浏览与交易”时&#xff0c;小程序在转化效率与使用路径上更具优势…...

Claude Skills工作原理介绍(SKILL.md、available_skills、渐进式加载:三层上下文架构、最少惊讶原则)

文章目录Claude Skills 是如何工作的&#xff1f;什么是 Claude Skills&#xff1f;Skills 的核心结构触发机制&#xff1a;Claude 如何决定"要不要查手册"&#xff1f;渐进式加载&#xff1a;三层上下文架构Skills 的生命周期&#xff1a;从创建到迭代1. 捕捉意图2.…...

一文吃透 TDengine:对比主流时序库、核心语法与避坑指南

前言在物联网、工业监控、车联网、能源等场景&#xff0c;时序数据&#xff08;时间戳 指标 标签&#xff09;的规模动辄亿级测点、万亿行数据&#xff0c;传统数据库与通用时序库往往陷入 “写不动、查不动、存不起” 的困境。TDengine&#xff08;涛思数据库&#xff09;凭…...

LAYONTHEGROUND看

一、什么是requests&#xff1f; requests 是一个用于发送HTTP请求的 Python 库。 它可以帮助你&#xff1a; 轻松发送GET、POST、PUT、DELETE等请求 处理Cookie、会话等复杂性 自动解压缩内容 处理国际化域名和URL 二、应用场景 requests 广泛应用于以下实际场景&#xff1a; …...