Charles-抓包工具的使用

文章目录

  • Charles简介与安装
    • Charles的简介
    • Charles的安装
    • Charles 安装证书
  • 抓包
    • 在PC端抓取HTTPS请求
    • 在移动端进行抓包
      • 移动端配置
        • Androd端配置
        • iOS端配置
      • Charles使用小技巧:
  • 模拟慢速网络

Charles简介与安装

Charles的简介

  • Charles 是在 PC 端常用的网络封包截取工具,在做移动开发时,我们为了调试与服务器端的网络通讯协议,常常需要截取网络封包来分析。除了在做移动开发中调试端口外,Charles 也可以用于分析第三方应用的通讯协议。配合 Charles 的 SSL 功能,Charles 还可以分析 Https 协议。
  • Charles 通过将自己设置成系统的网络访问代理服务器,使得所有的网络访问请求都通过它来完成,从而实现了网络封包的截取和分析。
    在这里插入图片描述

Charles的安装

打开浏览器访问Charles官网,下载相应系统的安装包,然后安装即可。
下载地址:https://www.charlesproxy.com/download/

Charles 安装证书

安装完重启电脑才会生效
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

抓包

在PC端抓取HTTPS请求

在这里插入图片描述

  • 打开Charles工具,在菜单栏Proxy中勾选macOS Proxy/WIndows Proxy,使Recoding开关处于开启状态后,即可抓取PC端的请求。
    在这里插入图片描述

在移动端进行抓包

  • Charles 除了用来截取PC端的网络封包,更常用来截取手机端的网络请求(Android和iOS)。在菜单栏中点击Proxy->Proxy Settings,在窗口中进行设置端口号的设置,默认8888,如无占用则不用修改,并勾选下方的两个单选框。


在这里插入图片描述

移动端配置

在这里插入图片描述

Androd端配置
  • 保持代理设置不变,在手机浏览器中输入地址 chls.pro/ssl 会开始一个下载任务
  • 下载完毕后打开文件文件管理器找到刚才下载的证书,证书的格式为pem,如果手机无法识别pem格式,则需要将文件后缀改为.crt(有的手机可能是.cert)后进行安装
  • 在Charles中对需要查看的请求开启SSL代理即可查看内容
iOS端配置
  • 保持代理设置不变,在手机浏览器中输入地址 chls.pro/ssl 会开始一个下载任务
  • 下载完毕后,在手机设置-通用-VPN与设备管理页面下,找到刚才下载的证书进行安装
  • iOS10系统后,需要额外在手机设置-关于本机-证书信任设置下,开启charles证书信任
  • 在Charles中对需要查看的请求开启SSL代理即可查看内容

Charles使用小技巧:

电脑或者手机设置代理后,Charles会抓取到非常多请求,无法找到我们想要的内容。
此时可以在请求列表中找到常用的域名,鼠标右键菜单栏中选择"Focus",这时未被Focus的域名就被收起在一个Other hosts的文件夹下
(也可在顶部View-Focus hosts功能下直接进行添加或者删除)

模拟慢速网络

  • 在做移动开发的时候,我们常常需要模拟慢速网络或者高延迟的网络,以测试客户端表现是否正常。Charles 对此需求提供了很好的支持。Throttle Settings 和 Start/Stop Throttling 配合使用,在 Start Throttling 的状态下,可以通过 Throttle Settings 配置各种网络状态。

  • Throttle Settings 的使用方法:

  1. 在 Charles 中点击Proxy-Throttle Setting,在弹出的页面中勾选上 “Enable Throttling”,添加/删除/修改需要节流的请求,如无特别要求我们一般使用 * (即全部请求都走节流),如相对单一请求节流,可勾选“Only for selected hosts”
  2. 在设置页面中,我们还可以选择Throttle Preset,如3G、4G等
  3. 另外,我们还可以根据自己的需求设置Bandwidth(带宽)、Utilistation(利用百分比)、Round-trip(往返延迟)、MTU(字节)等内容
  4. 设置完毕后,在客户端中重新发起请求,此时客户端页面刷新速度可能会变慢很多
    在这里插入图片描述
  • 模拟慢速网络功能常用场景:
    模拟一个慢速网络或高延迟的网络,测试客户端表现是否正常

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/446575.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

块设备驱动(1)-什么是块设备驱动?块设备驱动概念总结

1.块设备驱动概念 块设备驱动是针对存储设备,例如SD卡、EMMC、NAND FLASH、NOR FLSASH。 块设备驱动以块为单位进行访问、最小寻址单位是扇区、一个块中包含多个扇区、支持随机访问、带缓冲区,,当发生写入操作时,并不会立马操作硬…

GPU,一统天下

三十年前,CPU 和其他专用处理器几乎处理所有计算任务。那个时代的显卡有助于加快 Windows 和应用程序中 2D 形状的绘制速度,但没有其他用途。 快进到今天,GPU 已经成为业界最具主导地位的芯片之一。 但具有讽刺意味的是,图形芯片…

checking file system on C

1、win7系统 开机检查C盘,虽然可以ESC取消检查,每次操作很麻烦,且没有意思 2、注册表清空BootExecute数值数据 1)打开注册表 WinR (快捷键)输入“regedit”,回车 2)位置HKEY_LOCAL…

HTML5+CSS3+移动web——CSS基础

系列文章目录 HTML5CSS3移动web——HTML 基础-CSDN博客https://blog.csdn.net/ymxk2876721452/article/details/136070953?spm1001.2014.3001.5501HTML5CSS3移动web——列表、表格、表单-CSDN博客https://blog.csdn.net/ymxk2876721452/article/details/136221443?spm1001.2…

基于stm32的流水灯设计

1基于stm32的流水灯设计[proteus仿真] 速度检测系统这个题目算是课程设计和毕业设计中常见的题目了,本期是一个基于51单片机的自行车测速系统设计 需要的源文件和程序的小伙伴可以关注公众号【阿目分享嵌入式】,赞赏任意文章 2¥&#xff0c…

考研经验|如何从考研失败中走出来?

对我来说,太丢人了 其实我在本科的时候在同学眼中,一直很优秀,每年奖学金必有我的,国家励志奖学金,国家奖学金,这种非常难拿的奖学金,我也拿过,本科期间学校有一个公费去新西兰留学的…

Haproxy集群

一、HAProxy介绍 HAProxy是法国开发者威利塔罗(Willy Tarreau)在2000年使用C语言开发的一个开源软件,是一款具备高并发(一万以上)、高性能的TCP和HTTP负载均衡器,支持基于cookie的持久性,自动故障切换,支持正则表达式及web状态统…

数据库--SQL语言-1

练习网站:自学SQL网 Select 查询语法复习 SELECT column, another_column, …FROM mytableWHERE condition AND/OR another_condition AND/OR …; 操作符号: 如果属性是字符串, 我们会用到字符串相关的一些操作符号,其中 LIKE&#xff08…

【数理统计实验(四)】方差分析

🍉CSDN小墨&晓末:https://blog.csdn.net/jd1813346972 个人介绍: 研一|统计学|干货分享          擅长Python、Matlab、R等主流编程软件          累计十余项国家级比赛奖项,参与研究经费10w、40w级横向 文…

FIT介绍-0

1、背景 FIT是flattened image tree的简称,它采用了device tree source file(DTS)的语法,生成的image文件也和dtb文件类似(称做itb)。 结构如下图: 其中image source file(.its)和device tree …

Midjourney绘图欣赏系列(八)

Midjourney介绍 Midjourney 是生成式人工智能的一个很好的例子,它根据文本提示创建图像。它与 Dall-E 和 Stable Diffusion 一起成为最流行的 AI 艺术创作工具之一。与竞争对手不同,Midjourney 是自筹资金且闭源的,因此确切了解其幕后内容尚不…

【alibaba funAsr-0.1.9实时语音转文字部署(内外网】

alibaba funAsr-0.1.9实时语音转文字部署(内外网) 官方参考文档: https://github.com/alibaba-damo-academy/FunASR/blob/main/runtime/docs/SDK_advanced_guide_online_zh.md 前提: 我的内网服务器是华为欧拉,arm…

【Linux】shell理解及linux权限解读(“花花公子Root”的自由人生)

目录 1.shell外壳理解 1.1 什么是shell外壳: 1.2 为什么存在shell外壳程序: 1.3外壳程序的具体工作阶段是怎么样的?(招实习生,工作失败也不影响公司) 2.linux下的权限的概念 2.1linux的用户 2.2.文件类型和…

基于c#语言的股票模拟交易软件的开发与实现

基于C#语言的股票模拟交易软件(资管软件/分仓软件)的开发与实现是一个涉及多个技术领域的项目。以下是一个大致的开发流程和实现要点: 一、项目概述 股票模拟交易软件旨在提供一个虚拟的股票交易环境,让用户可以在没有真实资金投…

MySQL常见的存储引擎介绍

我将为您详细讲解 MySQL 常见的存储引擎,以及它们的使用场景、特点、区别和优势。MySQL 支持多种存储引擎,每种存储引擎都有其特定的优势和局限性。了解这些存储引擎的特点和适用场景对于选择合适的存储引擎以及优化数据库性能至关重要。 1. InnoDB 存储…

25改考408最新资讯!拷贝

东北大学 东北大学计算机考研全面改考408 东北大学计算机学院官网:http://www.cse.neu.edu.cn/6274/list.htm 东北大学计算机考研全面改考408 公告原文 东北大学计算机科学与工程学院关于调整2025年硕士研究生招生计算机科学与技术、计算机技术、人工智能专业初试…

AHU 算法分析 实验四 动态规划

实验四:动态规划 实验目的 • 理解动态规划的基本思想,理解动态规划算法的两个基本要素最 优子结构性质和子问题的重叠性质。 • 熟练掌握典型的动态规划问题。 • 掌握动态规划思想分析问题的一般方法,对较简单的问题能正确 分析&#x…

智慧公厕方案_智慧公厕解决方案_智慧公厕整体解决方案

一、什么是智慧公厕? 在现代城市化进程中,公共厕所是不可或缺的基础设施之一。然而,传统的公厕管理模式已经无法满足市民对高效、便捷厕所服务的需求。为了实现公共厕所的信息化管理,智慧公厕整体解决方案应运而生。智慧公厕具体…

查看pip当前关联python版本及位置

好久没用python了,把各种pip指向的环境忘光光啦,这里记录一下查看pip当前关联的python版本及位置的方法: pip -V结果: 我一般不用这个版本的python,去环境变量看了一下,原来是anaconda的Scripts自带pip&a…

Cisco Packet Tracer 模拟器实现一些交换机的基本配置

1. 内容 应用Cisco Packet Tracer 5.3搭建网络 应用Cisco Packet Tracer 5.3配置网络 通过不同的命令实现交换机的基本配置,包括交换机的各种配置模式、交换机的基本配置、交换机的端口配置。 2. 过程 2.1 打开软件 安装模拟器后打开如下: 图1 安装并…