【Charles】Charles如何抓取移动端设备,证书安装以及代理设置


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

步骤1:

我们首先需要下载并安装最新版本的 Charles。安装后,我们需要采取一些设置步骤才能启动并运行。在这篇文章中,我将详细介绍 macOS 和 iOS 上的设置和使用步骤,但一般概念也适用于其他操作系统。

第2步:

从您的应用程序文件夹中启动 Charles。您将看到下面的消息,您可以在其中授予权限,然后输入系统用户密码进行确认。步骤 3:
我们需要在运行 Charles 的计算机以及我们的移动设备上安装 Charles 根证书。这将使我们能够访问通过 Charles 代理的 SSL 流量。

通过选择“帮助” > “SSL 代理” > “安装 Charles 根证书”,下载 Charles 根证书并将其导入到 macOS 上的钥匙串。如您所见,默认情况下该证书不受信任,因此我们需要进行一些更改。

双击 Charles 证书的名称以打开证书详细信息窗口。展开“信任”部分,然后从“使用此证书时:”下拉列表中选择“始终信任” 。关闭证书详细信息窗口并再次输入您的密码以确认您的更改。您现在应该看到 Charles 证书被标记为可信。步骤4:

如果您使用的是物理 iOS 设备……
为了设置我们的移动设备,我们首先需要知道计算机的本地 IP 地址。在 Charles 中,选择 帮助 > 本地 IP 地址以显示此信息。您的本地 IP 地址也可以在Apple >系统偏好设置... >网络下找到。

现在我们知道了计算机的本地 IP 地址,我们需要将移动设备连接到同一网络,然后在设备上设置适当的代理设置。两台设备连接到同一网络后,在iOS 设置Wi-Fi中点击已连接网络的信息按钮,打开一个页面,其中包含有关网络连接的更多详细信息。在“HTTP 代理”下,选择“配置代理” > “手动”,然后在服务器字段中输入您在上面找到的本地 IP 地址,并输入端口 8888。点击保存以应用您的更改。


8888 是 Charles 的默认端口。如果这出现冲突,您可以在 Charles 中的“代理” > “代理设置...”下更改此设置。

设置完成后,我们需要在移动设备上安装 Charles 根证书。为此,请在移动设备上启动 iOS Safari 并导航至 chls.pro/ssl。Charles 证书将下载到设备,并带您进入iOS 设置中的“配置文件和设备管理”页面以安装证书。点击右上角的“安装” ,按照提示将证书安装到设备上。完成后,点击“完成”即可返回 iOS Safari。

如果您运行的是更高版本的 iOS 10 或更高版本,您还需要为设备上的 Charles 根证书启用证书信任设置。这可以通过导航到iOS 设置>常规>关于>证书信任设置并切换要启用的 Charles 代理根证书的选择器来完成。

在我们的移动设备上安装 Charles 根证书期间的某个时刻,我们将在 Charles 中看到以下消息:

这是为了允许设备允许在我们的计算机上使用 Charles 作为代理。单击“允许”

如果您使用的是 iOS 模拟器...

Charles 为 iOS 模拟器提供了非常简单的根证书安装过程。要安装,只需导航到“帮助” > “SSL 代理” > “在 iOS 模拟器中安装 Charles 根证书”。单击“确定”即可!

万一您错过了……确认消息指出,如果模拟器流量没有出现在 Charles 中,请在运行模拟器之前尝试运行 Charles。

现在我们已经安装了证书,让我们启用 SSL 代理,以便我们可以查看有关 HTTPS 流量的所有详细信息。

第 5 步:

要启用 SSL 代理,请导航至代理SSL 代理设置...,并确保选中启用 SSL 代理复选框。此时,我还建议阅读对话框的说明,并单击左下角的帮助问号以获取更多信息。这里有一些您不想错过的重要内容。

我们将选择为所有位置启用 SSL 代理,方法是单击“添加”,在“主机”字段中输入单个通配符 (*),将“端口”留空,然后单击“确定”。完成后,我们的 SSL 代理设置应如下所示:

 第 6 步:

让我们快速设置更多的事情,让我们在查尔斯的生活变得更加轻松。从菜单栏中选择“视图” > “序列”。这将使我们能够在调用时按顺序查看它们。接下来,选择Charles > Preferences...,选择Viewers选项卡,取消选择合并请求和响应,然后将Time 下拉列表设置为毫秒。

我鼓励您稍后花一些时间来熟悉这些选项(包括结构视图)并使用最适合您的选项。

单击“确定”返回 Charles 主窗口,让我们开始测试!

原文链接:Better Mobile Application Testing with Charles Proxy – Test Effective

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您好!对于Charles移动端抓包配置代理无法使用网络的问题,可能有几个原因导致。以下是一些常见的解决方法: 1. 确保设备Charles所在的计算机在同一个局域网下,并且能够相互访问。您可以尝试通过在设备上访问Charles所在计算机的IP地址来验证网络连接是否正常。 2. 在设备网络设置中配置代理。在移动设备的Wi-Fi设置中,找到当前连接的Wi-Fi网络,点击进入高级设置(或代理设置),选择手动配置代理,并输入Charles所在计算机的IP地址和端口号(默认为8888)。 3. 在Charles中启用SSL代理功能。打开Charles软件,转到“Proxy”菜单,选择“SSL Proxying Settings”,确保“Enable SSL Proxying”选项已勾选,并添加需要抓包的域名或IP地址。 4. 在移动设备安装Charles的SSL证书。在Charles软件中,转到“Help”菜单,选择“SSL Proxying”下的“Install Charles Root Certificate on a Mobile Device or Remote Browser”选项。根据提示,将证书发送到您的设备安装。 5. 确保移动应用程序的网络请求正常。有些应用程序可能会使用自定义的网络请求库或者HTTPS证书固定功能,需要进行额外的配置才能与Charles正常通信。您可以尝试使用其他应用程序进行测试,或者查看应用程序的开发文档了解是否需要进行特殊配置。 如果以上方法仍然不能解决问题,可以尝试重启设备、重启Charles、更新Charles版本或者尝试其他抓包工具进行测试。希望这些解决方法能对您有所帮助!如果您还有其他问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值