文章目录
-
- 介绍
- 请求模型
- 其他功能
- Charles代理设置
- Charles抓取HTTP请求
-
- 安卓真机测试抓包
-
- 第一步
- 第二步
- 第三步
- 第四步
- Charles抓取HTTPS请求
-
- 电脑上安装证书
- 手机上安装证书
-
- Android手机
- IOS手机
- 常用选项
介绍
百度百科
Charles官
使用场景:
Android手机配置好后,charles可以直接抓到手机端的包。
IOS手机配置好后还需要证书,有了证书后才能抓到手机端的包。
如果你的URL都是HTTPS的加密传输,也需要证书;HTTP的没加密就不用证书。
请求模型
当我们通过 Charles 代理时发生的流程。
该请求将由我们在移动应用程序中发起的某些事件或操作触发,通过 Charles 作为我们的代理发送,并由后端接收。然后它由创建响应的后端服务处理。该响应最终被发送回一路通过 Charles 的应用程序。
Charles抓取HTTP请求
当 Charles 安装好之后,就可以抓取 HTTP 的包了。
安卓真机测试抓包
注意:
要确保你的手机与电脑端连接的是同一 络,在同一 络下Charles才能抓到app的包。如果你手机用的流量或其他 络Charles无法抓包成功,这是前提。
第一步
配置手机开发者模式
例如:
华为手机打开开发者选项的方法
- 请您打开“设置”,下拉找到打开“关于手机”,
- 在新界面拉到手机屏幕最下方,找到【版本 】,然后用手猛点击5-7下,即可开启开发者模式。
- 点击过后,如果出现下图中【您现在处于开发者模式】,说明您点击成功;如果没有,请继续点击,直至出现为止。
- 返回到手机设置里就会发现有“开发人员选项”,在这里面可以设置是否打开USB调试以及其他功能。
第二步
打开开发人员选项,勾上“开发人员选项”、“USB调试”
第三步
查看电脑IP;
- 您的本地 IP 地址也可以在 Apple > System Preferences (系统偏好设置) > Network( 络)下找到
- 或者,可以通过Charles来查看:
Help —> Local IP Address
第四步
配置手机 路连接;
打开WiFi列表 —> 长按连接的WiFi修改 络设置代理 — > 设置代理信息。
代理选【手动】,服务器主机名填写电脑IP地址,服务器端口填写与Charles设置的一样。之后点保存就行了。
做完上面的配置,在Charles上,点击 Start Recording,就可以抓包了。
Charles抓取HTTPS请求
如果是HTTPS请求,我们需要安装证书:
1.电脑上需要安装证书
2.手机上需要安装证书
电脑上安装证书
第一步安装证书:
Help —> SSL Proxying —> Install Charles Root Certificate
下载 Charles 根证书并将其导入 macOS 上的钥匙串。默认情况下此证书不受信任,因此我们需要进行一些更改。就不截图了,操作如下:
双击 Charles 证书的名称以打开证书详细信息窗口。
展开信任部分,并从使用此证书时:下拉列表中选择始终信任。
关闭证书详细信息窗口并再次输入您的密码以确认您的更改。
您现在应该看到 Charles 证书被标记为受信任。
第二步设置SSL属性:
Proxy —> SSL Proxy Settings —> 然后add操作(设置port为443,443为抓取HTTPS接口)
手机上安装证书
Charles也提供了指导,操作如下:
Help —> SSL Proxying —> Install Charles Root Certificate on a Mobile Device or Remote Browser
如图:
Android手机
第一步下载证书
打开浏览器,输入:chls.pro/ssl,就会自己下载到手机上,这里需要记住下载完成保存到本地的路径。
第二步安装证书
设置 —> 安全 —> 更多安全设置 —> 加密与凭据 —> 从存储设备安装,选择之前保存证书的路径。
注意,有的手机是直接点击下载的文件即可安装,有的无法安装,无法安装可以把证书后缀.pem修改为.cer或.crt尝试一下。
IOS手机
在移动设备上启动 iOS Safari 并导航至 chls.pro/ssl。Charles 证书将下载到设备并带您进入 iOS 设置中的配置文件和设备管理页面以安装证书。点击右上角的安装,按照提示在设备上安装证书。完成后,点击完成以返回 iOS Safari。
如果您运行的是更高版本的 iOS 10 或更高版本,您还需要为设备上的 Charles 根证书启用证书信任设置。这可以通过导航到iOS Settings > General > About > Certificate Trust Settings并切换选择器以启用 Charles Proxy 根证书来完成。
做完上面的配置,在Charles上,点击 Start Recording,就可以抓包了。
常用选项
从菜单栏中,选择View > Sequence。这将使我们能够在调用时按顺序查看调用。接下来,选择Charles > Preferences…,选择Viewers选项卡,取消选择Combine request and response,并将Time 下拉菜单设置为毫秒
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!