mac抓包工具Charles使用详细教程(图文)

简单介绍

Charles官网地址:https://www.charlesproxy.com/

Charles的官网是这样介绍自己的:

Charles是HTTP代理/HTTP监视器/反向代理,使开发人员可以查看其计算机与Internet之间的所有HTTP和SSL/HTTPS通信。这包括请求,响应和HTTP标头(其中包含cookie和缓存信息)。

Charles主要功能

  • SSL代理: 以纯文本格式查看SSL请求和响应
  • 带宽限制:以模拟较慢的Internet连接(包括延迟)
  • AJAX调试:以树或文本形式查看XML和JSON请求和响应
  • AMF:以树形视图查看Flash Remoting / Flex Remoting消息的内容
  • 重复请求:测试接口
  • 编辑请求:测试不同的输入
  • 拦截和编辑请求或响应的断点
  • 使用W3C验证器验证记录的HTML,CSS和RSS/atom响应

简而言之,Charles主要是用来抓取请求,用来分析请求,并且可以重新构造请求。

安装

进入官网下载页面:https://www.charlesproxy.com/download/

image

可以看到,Charles是跨平台的,window、macos、linux都支持,这里要特别说明一下,这款软件本身是收费的,免费版,自行网上搜一下就有,毕竟我们大祖国神人多,我个人正在使用的就是免费中文版,太香啦~~~

image

必要的设置

1、代理设置:打开"代理-代理设置"页面,设置代理端口,默认"8888",注意不要被占用了
image

2、记录设置:打开"代理-记录设置"页面,设置需要记录的请求和需要排除的请求,需要检查下,因为看到很多人说抓取不到请求,就是这里设置问题
image

3、安装证书:打开"帮助-SSL代理-安装CharlesRoot证书",会在电脑上安装一个证书,这里是为了抓取https请求做准备的,注意证书设置设置为"始终信任"
image
image

4、macOS Proxy:打开"代理",勾上"macOS Proxy"
image

抓取PC浏览器请求

先注意一下,这里是红色代表开始记录,灰色的话点一下它
image

然后打开谷歌浏览器,正常操作,就可以记录到浏览器发出去的请求啦,如果抓不到https请求,或者抓到的包乱码的话,那检查一下上面的"必要设置-安装证书"那一步设置的不正确
image
image
选择一个请求,可以看到这个请求的内容,可以选择用JSON格式展示
image
右键选择一个请求,可以看到更多操作,如"复制URL、复制请求参数、复制响应参数、重新编辑发送请求"
image

抓取手机app、小程序请求

首先保证手机、电脑在同一个网段内(连接同一个WIFI)

其次查看下电脑本地IP地址,Charles上也可以查看本地IP
image

设置手机代理,我这里以iphone为例


点击wifi感叹号

image

设置HTTP代理

image

image

回到电脑上,选择"帮助-SSL代理-在移动设备或远程浏览器上安装Charles Root证书"

image

按照它的提示,打开手机浏览器,输入chls.pro/ssl,会弹出一个描述文件让你安装,点击允许

image
image

打开手机“设置-通用-描述文件”,点击信任

image

再进入“设置-通用-关于本机-证书信任设置”,把这个点亮

image

以上工作准备完毕,就可以开始抓app和小程序的请求了

我这里随便演示一下,打开美团的微信小程序,搜索“星巴克”,可以看到发送了这些请求
image
image
image
image

抓取APP请求

抓取app请求跟抓取小程序是一样操作的,自己可以尝试一下。

注意事项

注意一下,如果不抓包了,记得把手机的代理关闭掉,不然连WIFI上不了网
image

文章内容为本人原创,是从以前头条号文章迁移过来,图片中水印是本人自己的。(现在头条名字已经改了)

猜你喜欢

转载自blog.csdn.net/pan_jiabao/article/details/123126053