Charles抓包工具详解
学习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抓包工具详解的更多相关文章
- fillder 抓包工具详解
一.安装详解 直接点击.exe可执行文件,一直下一步直到安装完成即可.打开主要为5个部分: 二.安装jmeter插件详解 三.工具详解 3.1:工具条:,可以给指定的请求添加备注信息,在导出后可以查看 ...
- Linux系统诊断必备技能之二:tcpdump抓包工具详解
一.简述 TcpDump可以将网络中传送的数据包完全截获下来提供分析.它支持针对网络层.协议.主机.网络或端口的过滤,并提供and.or.not等逻辑语句来帮助你去掉无用的信息. Linux作为网络服 ...
- Fiddler 抓包工具详解
Fiddler是一个蛮好用的抓包工具,可以将网络传输发送与接受的数据包进行截获.重发.编辑.转存等操作.也可以用来检测网络安全.反正好处多多,举之不尽呀!当年学习的时候也蛮费劲,一些蛮实用隐藏的小功能 ...
- fiddler抓包工具详解
转自:http://www.cnblogs.com/yyhh/p/5140852.html Fiddler 抓包工具总结 阅读目录 1. Fiddler 抓包简介 1). 字段说明 2). Sta ...
- Charles抓包实战详解
访问我的博客 前言 通过上一篇文章,想必你已经掌握了如何正确安装抓包神器 Charles,如果还是抓不了包,可以再看看. 今天要做是抓包实战,因为我在做网络文学的公司就职,所以就拿网络文学的 APP ...
- fildder抓包工具详解
fildder页面介绍名称和含义 名称 含义 # 抓取HTTP Request的顺序,从1开始,以此递增 Result HTTP状态码 Protocol 请求使用的协议,如HTTP/HTTPS/FTP ...
- fillder抓包工具详解
https://www.cnblogs.com/yyhh/p/5140852.html
- 抓包工具:tcpdump抓包命令详解
抓包工具:tcpdump抓包命令详解 简介: tcpdump全称:dump the traffic on a network,根据使用者的定义对网络上的数据包进行截获的包分析工具. tcpdump可以 ...
- Charles抓包工具使用
Charles抓包工具使用和进行接口数据模拟 打开软件,选择Tools >> Map Local >> 勾选enable >> add >> ...
- Charles 抓包工具(新猿旺学习总结)
Charles 抓包工具安装机操作 1.Charles 抓包工具是代理服务器工具,可以拦截数据,进行更改,返回数据,以实现前端后台的请求和响应数据的测试2.Charles 菜单介绍 Charles抓包 ...
随机推荐
- 使用vscode调试ros
https://blog.csdn.net/u012254599/article/details/106143540/ CMakeLists.txt set(CMAKE_BUILD_TYPE &quo ...
- 【译】.NET 7 中的性能改进(四)
原文 | Stephen Toub 翻译 | 郑子铭 边界检查消除 (Bounds Check Elimination) 让.NET吸引人的地方之一是它的安全性.运行时保护对数组.字符串和跨度的访问, ...
- JZOJ 1073. 【GDOI2005】山海经
\(\text{Solution}\) 非常经典的求区间最大字段和 不难想到线段树,考虑处理区间答案的合并 维护前缀后缀最大和与区间答案,合并考虑跨中点贡献即可 代码打得非常恶心... \(\text ...
- Oracle 备份与恢复 (Docker部署版)
Oracle 备份与恢复 (Docker部署版) 一,宿主机设置定时备份脚本 1.检查Oracle容器是否正常运行 docker ps 2.进入容器,创建shell脚本 #oracle11g 是容器名 ...
- PostGIS之维数扩展的九交模型
1. 概述 PostGIS 是PostgreSQL数据库一个空间数据库扩展,它添加了对地理对象的支持,允许在 SQL 中运行空间查询 PostGIS官网:About PostGIS | PostGIS ...
- Linux操作命令(三)1.more命令 2.less命令 3.head命令 4.tail命令
1.more 命令 分页显示文本文件的内容 more 命令,功能类似 cat ,cat 命令是将整个文件的内容从上到下显示在屏幕上. more 命令会一页一页的显示,方便使用者逐页阅读,而最基本的指令 ...
- vue2+ts 设计一个扑克牌比大小的游戏
首先
- Visual Studio Code C / C++ 语言环境配置的历程
前言 从大一开始学习c++用的dev-c++,后来看到老师用的是vs code,实在是馋它的颜值便去下了vs 2017.至于为什么下载vs 2017呢?是因为下载的时候我以为他们是一样的,便下了v ...
- 学习笔记3:Android Studio 配置NDK编译c++代码
NDK编译c++代码有两个方式: 1 ndk-build.cmd + Android.mk + Application.mk 编译, 可单独用ndk编译, 不使用IDE,使用Android需要配置b ...
- perlist
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 < ...