目录
2.charles提供两种不同的视图方式,可自行按需选择查看
一:charles的基本介绍
Charles 主要的功能包括下面这些:
1.抓取接口请求定位问题;抓取接口请求获取接口信息做接口测试;
2.支持重发网络请求,方便后端调试。
3.支持修改网络请求参数。
4.支持模拟慢速网络
charles相当于一个插在服务器和客户端之间的“过滤器”;
当客户端向服务器发起请求的时候,先到charles进行过滤,然后charles再把最终的数据发送给服务器;
注意:此时charles发给服务器的数据,不一定是客户端请求的数据;charles在接到客户端的请求时可以自由的修改数据,甚至可以直接Block客户端发的请求;
服务器接收请求后的返回数据,也会先到charles,经过charles过滤后再发给客户端;
同理:客户端接收的数据,不一定就是服务器返回的数据,而是charles给的数据;
正因为上面的原理,所以charles能实现的功能,对前端开发者和测试人员来说非常有吸引力,相当于请求和响应都可控的,而且charles为了控制更加方面,提供很多简洁的操作;
关于charles有很多很强大的功能,这里只做部分功能说明
1.proxy--windows proxy
勾选状态代表可以获取电脑浏览器web端的请求,不勾选状态则为不抓取电脑上所有请求
2.charles提供两种不同的视图方式,可自行按需选择查看
Structure 视图是将网络请求按访问的域名分类,也就是理解为文件夹类型
Sequence 视图是将网络请求按访问的时间排序,理解为单个文件
3.Clear
清除当前已捕获的所有请求
4. stop recording
停止所有请求的抓取
5.Proxy->Proxy Settings
查看默认端口号,默认端口号为8888,可自行修改
二:查看
webF12查看
charles查看![](https://img-blog.csdnimg.cn/2c0f5dc840d04ef8ab02dbd45a566a97.png)
2.抓电脑包
charles抓https包
注意:已经安装过证书
3.抓https包
4.弱网测试
charles做弱网模拟?
主要就是进行弱网模拟设置,可以设置网络情况比如3g,4g还有网速, 另外还可以设置针对哪些域名以及端口进行弱网模拟
5.断点
6.charles抓手机包:
1. 保证手机和电脑在同一个局域网下。 (手机和电脑连的是同一个路由器)
2. 打开help — ssl proxying — install charles root ......
3. 手机wifi里设置代理服务器。依据第二步中的代理服务器ip以及端口。(另外注意电脑的防火墙设置, 需要允许charles通过防火墙)
4. 手机自带浏览器打开第二步中的网页地址。下载并安装证书。
(注意: 安卓手机下载完之后,需要在设置中搜索证书,并安装证书)
(苹果手机下载完成之后,进入设置,会提示安装证书,安装完之后,需要在通用-关于手机中最下方的整数信任设置, 点击信任证书)
7. Filter
过滤请求,当请求杂乱无章时,为了确保我们拿到自己想要的数据,可以使用filer进行过滤关键字
8. Overview
查看这次请求的详细内容,例如耗时详细列车了请求开始时间、结束时间,响应开始时间、结束时间,总耗时、DNS耗时、网络延时等。对于Size也详细列出了请求头大小、响应头大小、压缩比例等内容。
URL:进行网络请求的链接;
Status:当前状态,complete表示请求完成;
Responce Code:返回码。不同的接口,不同的请求结果,返回码都不同;
Protocol:使用的协议;
Method:请求方式,如GET请求,POST请求等;
Kept Alive:判断当前是否正在链接(活跃);
Content-Type:发送的内容类型,如这里用的是XML文本,以UTF8的方式发送;
Client Address:客户端的IP地址;
Remote Address:远程服务器的IP;
Timing:
Request Start Time:请求开始的时间;
Request End Time:请求结束的时间;
Response Start Time:返回开始的时间;
Response End Time : 返回结束的时间;
Duration : 总时间;
Size:
Request Header :请求的头部大小;
Response Header:返回的头部大小;
Request : 请求发送的大小;
Response:返回数据的大小;
Total:所有数据大小;
9.Contents
Request : 查看请求内容(底下的Headers,Query String,Cookies,Raw。)
Headers:发送请求的头部信息; Query String : 发送参数列表;
Cookies: 浏览器缓存;
Raw:发送的原生数据,包括了头部和参数;
Reponse : 查看响应内容
Headers:是返回的头部信息;
Text:返回信息(除去头部)后的文本;
Hex:返回信息的16进制表示;
JSON:返回的信息以json格式展示
Raw:返回的所有原生数据,包括头部;
10. Chart
将接口的总体时间以柱状图形式显示