学习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. Ribbon服务调用+负载均衡(入门)

    1.Ribbon Ribbon中文:(用于捆绑或装饰的)带子; 丝带; 带状物; 主要功能是提供客户端的软件负载均衡算法和服务调用 Ribbon已经进入了维护模式了,但是Ribbon仍然被广泛使用中 ...

  2. Win10 局域网共享文件遇到的疑难杂症通用解决策略

    win10局域网共享文件时遇到的疑难杂症类型: 1. 网络列表中不能发现别人的计算机,别人也看不到自己的计算机 启用windows功能:SMB 1.0/CIFS 文件共享支持 确保文件共享的计算机处于 ...

  3. UI自动化中上传与唤醒弹窗

    本篇想谈的是在ui自动化中对上传的一些理解,干货满满. 一.是否有必要唤醒弹窗 以selenium为代表的库在进行文件上传时,是可以直接对输入框 "发送" 文件的,其send_ke ...

  4. JZOJ 1495. 宝石

    题目大意 用边长为 \(k\) 的正方形在平面内覆盖,求它能覆盖的最大点权和 思路 \(60\) 分:其实很容易想到按它们的横坐标先后排序,然后单调队列维护.复杂度 \(O(n k \log k)\) ...

  5. 通过反射机制简化 JDBC ResultSet 实体类的注入

    提出问题 查询完某个表之后,一般都是把结果的每一个字段注入到一个实体类中.比如,数据库 users 表,查询出来的结果注入到 User 实体类中. 通过 while 遍历 ResultSet,把字段对 ...

  6. wps二次开发

    JSAPI概述及原理 : [金山文档]JSAPI概述及原理 https://kdocs.cn/l/skWT29577eEE JSAPI集成开发文档 [金山文档]JSAPI集成开发文档 https:// ...

  7. HDFS存储流程及HA

    HDFS架构 主从(Master/Slaves)架构 由一个NameNode和一些DataNode组成 NameNode负责存储和管理文件元数据,并维护了一个层次型的文件目录树 DataNode负责存 ...

  8. C# DevExpress GridControl下动态创建列的方法

    这里是把在表格中创建控件的方法封装成一个类,然后在创建列的时候实例化"创建控件"的方法 1.在列中使用一些按钮 1 using Common; 2 using DevExpress ...

  9. springboot自带的MD5加密

    //md5DigestAsHex返回的是string类型 DigestUtils.md5DigestAsHex(user.getPassword().getBytes(StandardCharsets ...

  10. k8s ingress 报错整理

    问题: Error from server (InternalError): error when creating "ingress-rules-demo1.yaml": Int ...