学习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. Typora下载与安装 0.9.75版本

    Typora下载与安装 效果图 一.简介 一款 Markdown 编辑器和阅读器 (0.9.75 版本 不需购买) 二.下载 下载地址:Typora 三.安装 1.下载文件后双击安装 2. 选择存放的 ...

  2. 微信小程序分类菜单激活状态跟随列表滚动自动切换

    这里主要用到微信小程序提供的SelectorQuery获取页面节点信息实现,组件用的是微信小程序的scroll-view 逻辑就是获取右侧盒子的节点信息,获取右侧子分类的节点信息,当子分类滑动到顶部的 ...

  3. 【RocketMQ】Dledger日志复制源码分析

    消息存储 在 [RocketMQ]消息的存储一文中提到,Broker收到消息后会调用CommitLog的asyncPutMessage方法写入消息,在DLedger模式下使用的是DLedgerComm ...

  4. 五十条常用的MySQL语句

    1.查询"001"课程比"002"课程成绩高的所有学生的学号:select a.S# from (select s#,score from SC where C ...

  5. 基于C++的OpenGL 11 之投光物

    1. 引言 本文基于C++语言,描述OpenGL的投光物 前置知识可参考: 基于C++的OpenGL 10 之光照贴图 - 当时明月在曾照彩云归 - 博客园 (cnblogs.com) 笔者这里不过多 ...

  6. REST风格开发

    使用测试工具 测试工具中 总结 @RequestBody:接收请求体参数Json @RequestParam:接收路径参数,包括表单 @PathVariable: 接收路径变量的. Rest风格优化 ...

  7. SpringBoot启动失败问题

    SpringBoot启动失败问题 一.现象 pom.xml没有显示报错,也能查看到各种需要的依赖jar包,但在启动时显示 二.原因 网络不好导致maven导包失败或者导包不完整 三.解决办法 进入项目 ...

  8. 微信小程序tabBar图标显示失败问题

    练习tabBar时发现链入的图片在没有任何语句语法错误以及报错的情况下显示失败 试了很多办法 最后请教了一下学长才知道需要重启小程序开发工具并清缓存 问题解决

  9. c++中int转string

    在muduo库中看见的一个函数,写的有点秀 const char digits[] = "9876543210123456789"; const char* zero = digi ...

  10. 预处理指令详解(C语言

    一.预处理符号 预处理符号是C语言内置的符号,是可以直接使用的. 其中,若遵顼ANSI C,则__STDC__ 为1,否则未定义. 二.#define 1)定义标识符 define可以用来定义标识符, ...