Charles 使用教程

Charles 是一款强大的网络封包分析软件,用于抓取HTTP和HTTPS请求。它支持SSL代理、流量控制、AJAX和AMF调试,以及重发和修改网络请求。在Mac上,设置系统代理后,可以捕获本地网络请求。对于移动设备,如iOS和Android,需配置设备代理,并安装Charles的证书来抓取HTTPS请求。通过Charles,开发者能更便捷地进行网络调试和分析。
摘要由CSDN通过智能技术生成

简介

Charles是一款常用的抓包工具,抓包工具可以截取通过它设置代理服务器下所有通过他发起与返回的网络请求,和fiddler、wireshark,原理是一样的

Charles主要功能

  1. 支持SSL代理。可以截取分析SSL的请求。

  2. 支持流量控制。可以模拟慢速网络以及等待时间(latency)较长的请求。

  3. 支持AJAX调试。可以自动将json或xml数据格式化,方便查看。

  4. 支持AMF调试。可以将Flash Remoting 或 Flex Remoting信息格式化,方便查看。

  5. 支持重发网络请求,方便后端调试。

  6. 支持修改网络请求参数。

  7. 支持网络请求的截获并动态修改。

  8. 检查HTML,CSS和RSS内容是否符合W3C标准。

使用

抓取网络请求

一. 将Charles设置成系统代理

Charles 是通过将自己设置成代理服务器来完成抓包的,勾选系统代理后,系统本地发出去的请求都能被截取下来。
如果只抓取APP的包的话,可关闭此配置,这样不会出现太多的数据看着比较乱。

Mac:
在这里插入图片描述
需要注意的是,Chrome 和 Firefox 浏览器默认并不使用系统的代理服务器设置,而 Charles是通过将自己设置成代理服务器来完成封包截取的,所以在默认情况下无法截取 Chrome 和 Firefox浏览器的网络通讯内容。

如果你需要截取的话,在 Chrome 中设置成使用系统的代理服务器设置即可,或者直接将代理服务器设置成127.0.0.1:8888 也可达到相同效果

二. 截取移动设备上的网络请求包

我们在调试移动APP时,需要抓取APP发送的数据包,首先进行设置,Proxy -> Proxy Settings默认端口是8888,根据实际情况可修改。
在这里插入图片描述
查看本机IP地址:Help -> Local IP Addresses

在这里插入图片描述

然后配置手机代理:

IOS和 Android 类似,以 IOS 举例
在这里插入图片描述
打开要调试的APP,请求就会先发送到Charles,然后验证是否允许访问。
在这里插入图片描述

三. 抓取 HTTPS 请求包

默认我们是看不到https的请求数据的。我们需要安装证书。
包括服务端证书和客户端证书

在这里插入图片描述

安装代理服务器-服务端整数

在这里插入图片描述
#####
双击打开Charles Proxy CA

在这里插入图片描述

安装客户端证书

在这里插入图片描述
在这里插入图片描述
手机配置完代理(必须的操作)后,浏览器打开http://chls.pro/ssl

在这里插入图片描述
在这里插入图片描述
然后配置Proxy -> SSL Proxying Settings… 添加要抓取的https请求
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值