学习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. .NET Core MongoDB的简单使用

    一.创建测试库.测试表.添加测试数据 使用之前文章提到的MongoDB Compass用法分别添加数据库[myDb]和集合(表)[userinfos]信息, 参考链接为:MongoDB Compass ...

  2. 图说论文《LSM-based Storage Techniques: A Survey》

    本文从 <LSM-based Storage Techniques: A Survey> 摘取部分图片,来介绍 LSM tree 的相关内容.详细内容请查看论文原文. in-place u ...

  3. jupyter环境搭建

    前言 jupyter,一个交互式的笔记本,进行数据分析时比pycharm要好用和专业一些. jupyter安装的正确姿势 在别的教程里,他们讲的是通过pip install jupyter或者brew ...

  4. CF1625D.Binary Spiders

    \(\text{Problem}\) 大概就是给出 \(n\) 个数和 \(m\),要从中选最多的数使得两两异或值大于等于 \(m\) 输出方案 \(\text{Solution}\) 一开始的想法很 ...

  5. ubuntu lnmp环境搭建 LNMP(Ubuntu 20.04 + Nginx + PHP 7.1 + Mysql5.7)

    转载csdn: ubuntu lnmp环境搭建 LNMP(Ubuntu 20.04 + Nginx + PHP 7.1 + Mysql5.7)_ts3211的博客-CSDN博客_lnmp环境搭建

  6. Flutter:StatefulWidget 怎么传参

    定义好一个有状态(或无状态)的组件之后,需要为其传递一些参数,希望组件能够更加灵活使用.那么,在 Flutter 中如何为其传递参数呢? 以下是 StatefulWidget 传递值的步骤,一共三步: ...

  7. 基于Docker使用CTB生成地形切片并加载

    1. 引言 CTB(Cesium Terrain Builder)是一个用于地形切片的C++编写的命令行工具 GitHub地址为:GitHub - geo-data/cesium-terrain-bu ...

  8. PostGIS之几何创建函数

    1. 概述 PostGIS 是PostgreSQL数据库一个空间数据库扩展,它添加了对地理对象的支持,允许在 SQL 中运行空间查询 PostGIS官网:About PostGIS | PostGIS ...

  9. LeetCode-1706 球会落在何处

    来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/where-will-the-ball-fall 题目描述 用一个大小为 m x n 的二维网格 ...

  10. linux 端口的相关命令

    查看某个端口是否开发 isof -i:端口 说明:如果有显示说明已经开放了,如果没有显示说明没有开放 开放端口之后,查看防火墙是否对端口开放 查询端口号80 是否开启: firewall-cmd -- ...