Charles抓包工具使用介绍

来源:互联网 发布:如何自己做软件 编辑:程序博客网 时间:2024/05/16 14:44

Charles抓包工具使用介绍

Charles简介

Charles是一个http协议调试的代理工具,它能够记录并检查所有你的电脑和互联网之间的http通讯、设置断点、查看所有进出Charles数据的一款抓包工具
Charles主要功能包括:

  • 截取 Http 和 Https 网络封包
  • 支持重发网络请求,方便后端调试
  • 支持修改网络请求参数
  • 支持网络请求的截获并动态修改
  • 支持模拟慢速网络

Charles的下载安装

本人使用的是64位windows操作系统,安装Charles4.2.0最新破解版本,安装包以及破解教程请参考如下地址,请根据自己当前系统下载安装
下载地址:https://www.52pojie.cn/thread-619994-1-1.html

设置代理抓包

Charles基础配置

安装完成后默认开启自动设置代理服务器,且端口默认为8888,用户可根据自身需要来自行设置或更改端口,其路径为Proxy=>Proxy Setting,勾选Enable transparent HTTP proxying如下图
这里写图片描述

移动端配置

1、win+R键唤起运行窗口输入cmd点击确定,在弹窗内输入ipconfig敲下Enter键,找到自己当前的网络或者在Charles中依次点击“Help”–>“Local IP Address”获取地址,如图

这里写图片描述
这里写图片描述

2、手机端在无线网络中配置代理,输入该地址,输入Charles的端口即可配置完成,如图
这里写图片描述

Charles的视图模式

在Charles抓取到请求之后,有两种视图模式,见下图

1、按域名分类排列

这里写图片描述

2、按请求时间排序

这里写图片描述

过滤请求

1、Proxy-recording setting-include下设置要过滤的url,如下图

这里写图片描述

2、Sequence模式下在filter输入url过滤

这里写图片描述

这里写图片描述

模拟慢速网络

在开发与测试的时候,我们常常需要模拟慢速网络或者高延迟的网络,以此测试在移动网络下,应用的表现是否正常;
选择 “Proxy”–>“Throttle Setting” 项,在之后弹出的对话框中,我们可以勾选上 “Enable Throttling”,并且可以设置 Throttle Preset 的类型;如果我们只想模拟指定网站的慢速网络,可以再勾选上图中的 “Only for selected hosts” 项,然后在对话框的下半部分设置中增加指定的 hosts 项即可,如图

这里写图片描述

简单压力测试

在请求上右键,选择repeated advanced,设置并发线程数及压测循环次数,可以对接口进行简单压测

这里写图片描述

这里写图片描述

修改服务器返回内容

有些时候我们想让服务器返回一些指定的内容,方便我们调试一些特殊情况。例如列表页面为空的情况,数据异常的情况,部分耗时的网络请求超时的情况等,Charles 提供了 Map 功能和 Breakpoints 功能,都可以达到修改服务器返回内容的目的。二者在功能上的差异是:

  • Map 功能适合长期地将某一些请求重定向到另一个网络地址或本地文件
  • Breakpoints 功能适合做一些临时性的修改。

1、Map 功能分 Map Remote 和 Map Local 两种,Map Remote 是将指定的网络请求重定向到另一个网址请求地,在 Charles 的菜单中,选择 “Tools”–>“Map Remote” 即可进入到相应功能的设置页面
对于 Map Remote 功能,我们需要分别填写网络重定向的源地址和目的地址,对于不需要限制的条件,可以留空;只填写host时只是重定向域名,访问路径不会变,Path输入框可以输入请求路径,Query输入框可以输入一些请求参数,如图
这里写图片描述

这里写图片描述

2、Map Local 是将指定的网络请求重定向到本地文件。在 Charles 的菜单中,选择 “Tools”–>“Map Local” 即可进入到相应功能的设置页面
对于 Map Local 功能,我们需要填写的重定向的源地址和本地的目标文件。对于有一些复杂的网络请求结果,我们可以先使用 Charles 提供的 “Save Response…” 功能,将请求结果保存到本地,然后稍加修改,成为我们的目标映射文件,Path输入框可以输入请求路径,Query输入框可以输入一些请求参数,如图

(1)现将其接口Save Response到本地,在本地打开文件将需要更改的内容加以修改并保存

这里写图片描述

(2)右键当前的接口选择 Map Local 选择刚才保存到本地的文件,如图

这里写图片描述

(3)重新请求当前接口 ,会发现数据已被更改,如图

这里写图片描述

3、Breakpoints:先在请求上右键选择Breakpoint,然后proxy==》Breakpoints Setting==》请求URl==》自动进入Charles断点(分别会有Edit Request和Edit Response),Edit request后execute会自动进入Response界面,可以修改返回数据,然后Execute,界面显示的便会是修改后的数据;需要注意的是,使用 Breakpoints 功能将网络请求截获并修改过程中,整个网络请求的计时并不会暂停,所以长时间的暂停可能导致客户端的请求超时

这里写图片描述

这里写图片描述

抓取https请求

1、安装官方证书,首次安装是未信任证书,需要手动设置成信任
路径:Help=>SSL Proxying=>Install Charles Root Certificate点击后安装即可

这里写图片描述

2、移动端连接Charles,在浏览器中输入chls.pro/ssl,此时会弹出一个弹窗,任意输证书名称,点击确认即可,如图

这里写图片描述

3、启动应用,Charles抓取到https的请求后,会无数据显示,如图1,此时需要在Charles中做如下配置,路径为Proxy=>SSL Proxying Setting添加需要抓取的域名,如图2,当配置成功后,再次请求即可抓到https数据,如图3

这里写图片描述

这里写图片描述

这里写图片描述

原创粉丝点击