【Charles简单使用手册】

Charles使用

一、安装

charles激活码链接:https://www.charles.ren/
安装方法:去 Charles 的官方网站(http://www.charlesproxy.com)下载最新版的 Charles 安装包,是一个 dmg 后缀的文件。打开后
将 Charles 拖到 Application 目录下即完成安装。

二、ios抓包

charles上设置
要截取 iPhone 上的网络请求,我们首先需要将 Charles 的代理功能打开。在 Charles 的菜单栏上选择 “Proxy”->”Proxy
Settings”,填入代理端口 8888,并且勾上 “Enable transparent HTTP proxying” 就完成了在 Charles 上的设置。如下图所
示:
在这里插入图片描述

在这里插入图片描述
ios手机设置
首先我们需要获取 Charles 运行所在电脑的 IP 地址,Charles 的顶部菜单的 “Help”->”Local IP Address”,即可在弹出的
对话框中看到 IP 地址,如下图所示:
在这里插入图片描述
在 苹果手机的 “ 设置 “->” 无线局域网 “ 中,可以看到当前连接的 wifi 名,通过点击右边的详情键,可以看到当前连接
上的 wifi 的详细信息,包括 IP 地址,子网掩码等信息。在其最底部有「HTTP 代理」一项,我们将其切换成手动,然后填上
Charles 运行所在的电脑的 IP,以及端口号 8888,如下图所示:
在这里插入图片描述
设置好之后,我们打开 iPhone 上的任意需要网络通讯的程序,就可以看到 Charles 弹出 iPhone 请求连接的确认菜单(如下图
所示),点击 “Allow” 即可完成设置。
在这里插入图片描述
抓包https
如果你需要截取分析 Https 协议相关的内容。那么需要安装 Charles 的 CA 证书。具体步骤如下。
首先我们需要在 Mac 电脑上安装证书。点击 Charles 的顶部菜单,选择 “Help” -> “SSL Proxying” -> “Install
Charles Root Certificate”,然后输入系统的帐号密码,即可在 KeyChain 看到添加好的证书。如下图所示:
在这里插入图片描述
注意:需要注意的是,即使是安装完证书之后,Charles 默认也并不截取 Https 网络通讯的信息,如果你想对截取某个网站上的
所有 Https 网络请求,可以在该请求上右击,选择 SSL proxy,进行设置。公司测试包常用的环境如下图几个环境地址,默认的
是443端口,但如果想要抓取公司线上环境的https包,需设置api.udache.com,具体如下图所示:
在这里插入图片描述
截取移动设备中的 Https 通讯信息
如果我们需要在 iOS 或 Android 机器上截取 Https 协议的通讯内容,还需要在手机上安装相应的证书。点击 Charles 的顶部菜单,选
择 “Help” -> “SSL Proxying” -> “Install Charles Root Certificate on a Mobile Device or Remote Browser”,然后就可以
看到 Charles 弹出的简单的安装教程。如下图所示:
在这里插入图片描述
按照我们之前说的教程,在设备上设置好 Charles 为代理后,在手机浏览器中访问地址:http://chls.pro/ssl ,即可打开证书安装的界
面,安装完证书后,就可以截取手机上的 Https 通讯内容了。

三、工具使用

修改请求参数以及返回结果
在charles中的 tool → Rewrite中,可以随意修改
修改请求参数:
修改返回结果:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
Map Remote 和 Map Local
Charles 的 Map 功能分 Map Remote 和 Map Local 两种,顾名思义,Map Remote 是将指定的网络请求重定向到另一个网址请求
地址,Map Local 是将指定的网络请求重定向到本地文件。
在 Charles 的菜单中,选择 “Tools”->”Map Remote” 或 “Map Local” 即可进入到相应功能的设置页面。

在这里插入图片描述
对于 Map Remote 功能,我们需要分别填写网络重定向的源地址和目的地址,对于不需要限制的条件,可以留空。下图是一个示
例,我将所有线上环境:https:api.baidu.com 的请求重定向到了 http:188.9546.87.76:9996(测试环境)

在这里插入图片描述
对于 Map Local 功能,我们需要填写的重定向的源地址和本地的目标文件。对于有一些复杂的网络请求结果,我们可以先使用
Charles 提供的 “Save Response…” 功能,将请求结果保存到本地(如下图所示),然后稍加修改,成为我们的目标映射文
件。

在这里插入图片描述
BreakPoints
上面提供的 Rewrite 功能最适合做批量和长期的替换,但是很多时候,我们只是想临时修改一次网络请求结果,这个时候,使用
Rewrite 功能虽然也可以达到目的,但是过于麻烦,对于临时性的修改,我们最好使用 Breakpoints 功能。
Breakpoints 功能类似我们在 Xcode 中设置的断点一样,当指定的网络请求发生时,Charles 会截获该请求,这个时候,我们可以在
Charles 中临时修改网络请求的返回内容。

Supongo que te gusta

Origin blog.csdn.net/weixin_48960759/article/details/121499111
Recomendado
Clasificación