一、抓包概述
1. 抓包概念
抓包是将网络传输发送与接收的数据包进行截获、重发、编辑、转存等操作,也用来检查网络安全等。下面小编就介绍几种抓包软件。
2. 常见抓包工具
Charles、fiddler、wireShark
测试为什么要学习Charles抓包?
能够使用Charles来分析前后端问题
能够使用Charles模拟弱网测试环境
能够使用Charles的断点构建异常的测试场景
一、Charles简介
1. 什么是Charles
Charles中文名字青花瓷,是一款Http代理服务器和Http监视器,当移动端在无线网连接中按要求设置好代理服务器,使所有对网络的请求都经过Charles客户端来转发时,Charles可以监控这个客户端各个程序所有连接互联网的Http通信。
特点:跨平台、半免费
免费版本:一是启动等待十秒才能启动,二是半小时重启一次
2. Charles工作原理
2.1 原理
截获真实客户端的HTTPS请求,伪装客户端向真实服务端发送HTTPS请求
接受真实服务器响应,用Charles自己的证书伪装服务端向真实客户端发送数据内容
2.2 原理图
2.3 原理案例
租房子 房客 中介 房东
前置步骤:
(1)需要运行Charles并配置代理
(2)在客户端上面需要配置代理
步骤:
(1)有客户端发送请求
(2)Charles接受再发送给服务端
(3)服务端返回请求结果给Charles
(4)由Charles转发给客户端
3. Charles主要功能
支持HTTP/HTTPS代理
支持流量控制
支持接口并发请求
支持重发网络请求,方便后端调试
支持断点调试
支持修改网络请求参数
支持网络请求的截获并动态修改
支持模拟慢速网络
4. Charles优点(相对Fiddler)
Charles能够支持Linux、macOS,fiddler不支持
Charles支持按域名和按接口查看报文,简洁明了
Charles支持反向代理,fiddler不支持
Charles网络限速可选择网络类型,选择3G、4G、5G等
Charles可以解析AMF协议,一般用不到