学习Charles能做什么:

能够用charles分析前后端问题

能够使用charles模拟弱网测试环境

能够使用charles断点构建异常的测试环境

Charles 简介

1.Charles是什么?

Charles 基于http协议的代理服务器,通过成为电脑或者浏览器的代理,然后截取请求和请求结果达到分析抓包的目的。(代理服务器,跨平台)

2.Charles 工作原理是

3.Charles主要功能

  支持http和https代理

  支持流量控制

  支持接口并发请求

  支持重发网络请求

  支持断电调试

4.Charles的优点

  对比Fiddler

  charles 支持,windows,linux,MacOs,  Fiddler对windows

  charles 支持 按域名和接口查看报文,见解明了

  charles 支持反向代理

  charles 支持网络限速

  charles 支持解析AMF协议

Charles安装与配置

1.Charles安装

下载路径(官网): https://www.charlesproxy.com/download/

默认安装就好

 2.Charles激活码 :https://www.zzzmode.com/mytools/charles/

 激活码生成完毕并激活操作

安装完成!!! 

如果这时候查看带有https的报文,会看到都是乱码的情况(后面会讲)

 3.Charles组件介绍

 主导航栏介绍

4.Charles代理设置

 启动Charles代理服务(端口配置)

 5.Charles访问控制(控制哪个IP可以访问到我们Charles)

6.Charles(电脑客户端)代理设置

这里的作用 就是 将你电脑所有的请求都经过这个代理服务器, 如果你也想看别人电脑每天请求的报文,在同一个网络的情况下那就在别人电脑代理这个地方 填写你电脑的Ip加端口就好了。

总结:如果是本机电脑,默认已经给我们设置好了,  如果代理其他电脑要改成其他电脑的ip

7.Charles手机客户端设置

抓取手机应用中的报文信息(一定要再同一个wifi下)

ios手机代理设置

1 手机中选择 "设置" "无线局域网"

2 点击同一个wifi 名称

3 在http代理配置中选择 “手动”

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

以下效果

IOS证书配置(重要)

在手机浏览器中输入 : http://charlesproxy.com/getssl 或者 https://www.charlesproxy.com/assets/legacy-ssl/charles.crt ,点击下载,然后就是(普通的证书信任设置操作)

证书安装好以后 在 设置 -> 通用 -> 关于本机 -> 证书信任设置  -> 完全信任

都配置好后,这个时候你访问 你手机里的百度 有可能会出现这个

 允许后访问,其实你会发现这一点其实就是上面 “ charles 访问控制”  说的,你再去看“ 访问控制” 中 这个页面 ,会发现 手机上的 iP 已经配置在里面了

 这时候,手机访问浏览器等信息,就可以在 charles 中抓取到报文信息了

https配置

如果在未安装该网站的ssl证书的情况,看到的是 unknown 和一堆乱码

windows证书安装

https 代理配置

1 在charles 窗口中点击菜单 “proxy” -> "SSL proxying setting"

2 在打开的窗口中勾选 “Enable SSL Proxying”

3 添加 locatIon  *:443

4 点击ok

再次查看 已成功解析https报文

Charles流量配置

可以模拟不同的网络环境,2g/3g/ 等

1菜单“proxy” -> "throttle setting"

2 在打开的窗口中 勾选 “Enable Throttling”

3 在 “Throttle preset” 下拉框中选择对应的网络类型

4 点击ok

使用完毕后 建议关掉 可能会影响正常网络使用

Charles断点设置

选中要打断点的请求,一定要右键选中 “Breakpoints”  ,然后再次发动请求

再次发送请求

点击 “Execute” 执行结束

 完!!!

Charles抓包工具详解的更多相关文章

  1. fillder 抓包工具详解

    一.安装详解 直接点击.exe可执行文件,一直下一步直到安装完成即可.打开主要为5个部分: 二.安装jmeter插件详解 三.工具详解 3.1:工具条:,可以给指定的请求添加备注信息,在导出后可以查看 ...

  2. Linux系统诊断必备技能之二:tcpdump抓包工具详解

    一.简述 TcpDump可以将网络中传送的数据包完全截获下来提供分析.它支持针对网络层.协议.主机.网络或端口的过滤,并提供and.or.not等逻辑语句来帮助你去掉无用的信息. Linux作为网络服 ...

  3. Fiddler 抓包工具详解

    Fiddler是一个蛮好用的抓包工具,可以将网络传输发送与接受的数据包进行截获.重发.编辑.转存等操作.也可以用来检测网络安全.反正好处多多,举之不尽呀!当年学习的时候也蛮费劲,一些蛮实用隐藏的小功能 ...

  4. fiddler抓包工具详解

    转自:http://www.cnblogs.com/yyhh/p/5140852.html Fiddler 抓包工具总结   阅读目录 1. Fiddler 抓包简介 1). 字段说明 2). Sta ...

  5. Charles抓包实战详解

    访问我的博客 前言 通过上一篇文章,想必你已经掌握了如何正确安装抓包神器 Charles,如果还是抓不了包,可以再看看. 今天要做是抓包实战,因为我在做网络文学的公司就职,所以就拿网络文学的 APP ...

  6. fildder抓包工具详解

    fildder页面介绍名称和含义 名称 含义 # 抓取HTTP Request的顺序,从1开始,以此递增 Result HTTP状态码 Protocol 请求使用的协议,如HTTP/HTTPS/FTP ...

  7. fillder抓包工具详解

    https://www.cnblogs.com/yyhh/p/5140852.html

  8. 抓包工具:tcpdump抓包命令详解

    抓包工具:tcpdump抓包命令详解 简介: tcpdump全称:dump the traffic on a network,根据使用者的定义对网络上的数据包进行截获的包分析工具. tcpdump可以 ...

  9. Charles抓包工具使用

    Charles抓包工具使用和进行接口数据模拟 打开软件,选择Tools  >>  Map Local  >>  勾选enable  >>  add  >> ...

  10. Charles 抓包工具(新猿旺学习总结)

    Charles 抓包工具安装机操作 1.Charles 抓包工具是代理服务器工具,可以拦截数据,进行更改,返回数据,以实现前端后台的请求和响应数据的测试2.Charles 菜单介绍 Charles抓包 ...

随机推荐

  1. Netty进阶

    1.Netty问题 TCP协议都存在着黏包和半包问题,但是UDP没有 1.粘包现象 发送方分10次发送,接收方一次接受了10次发送的消息 2.半包现象 调整服务器的接受缓冲区大小(调小) 半包会导致服 ...

  2. vue的异步组件

    异步组件 异步组件:可以在首页加载之前先加载的组件,主要是做性能优化,提高用户体验 一.基本用法 在大型项目中,我们可能需要拆分应用为更小的块,并仅在需要时再从服务器加载相关组件.Vue 提供了 de ...

  3. 下篇 | 使用 🤗 Transformers 进行概率时间序列预测

    在<使用 Transformers 进行概率时间序列预测>的第一部分里,我们为大家介绍了传统时间序列预测和基于 Transformers 的方法,也一步步准备好了训练所需的数据集并定义了环 ...

  4. MySQL数据类型补充

    数据类型 整数数据类型 特殊说明: ​ 对于整数类型,MySQL还支持在类型名称后面加小括号(M),而小括号中的M表示显示宽度,M的取值范围是(0, 255).int(M)这个M在字段的属性中指定了u ...

  5. Json.stringfiy json未定义

    在文档的顶部添加 <!DOCTYPE html> 没有它,IE10是一个奇怪的兼容模式,许多"新"功能不可用,例如JSON.如果你任然需要使用早期版本的IE,你可以使用 ...

  6. nvm作用、下载、使用、常见问题

    一.nvm是什么及作用 nvm全名node.js version management,同等于nodejs的版本管理工具.当不同项目使用不同版本nodejs且不统一时,这时就用到nvm进行不同项目不同 ...

  7. Linux:atime、mtime、ctime

    三个时间 Linux 的文件属性中有:访问时间(Access Time).修改时间(Modify Time).改变时间(Change Time): 访问时间(Access Time):对文件进行一次读 ...

  8. LeetCode-1001 网格照明

    来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/grid-illumination 题目描述 在大小为 n x n 的网格 grid 上,每个单元 ...

  9. Java内存分析利器——Eclipse Memory Analyzer工具的使用

    一.如何下载Java程序的dump内存文件并离线导入到MemoryAnalyser工具进行分析 1.jps查看Java应用的pid   jps 11584216168084 Launcher24792 ...

  10. 179. 最大数 (Medium)

    问题描述 179. 最大数 (Medium) 给定一组非负整数 nums,重新排列每个数的顺序(每个数不可拆分)使之组成一个最大的整数. 注意: 输出结果可能非常大,所以你需要返回一个字符串而不是整数 ...