charles使用教程 ---- 抓取https请求 && 修改请求

目录

 简介

将 Charles 设置成系统代理

截取 Https 通讯信息

配置想要抓取数据的地址

在电脑上安装证书

设置HTTP和HTTPS代理

抓包工具charles修改请求和返回数据


 简介

Charles 是在 Mac 下常用的网络封包截取工具,在做 移动开发时,我们为了调试与服务器端的网络通讯协议,常常需要截取网络封包来分析。

Charles 通过将自己设置成系统的网络访问代理服务器,使得所有的网络访问请求都通过它来完成,从而实现了网络封包的截取和分析。

除了在做移动开发中调试端口外,Charles 也可以用于分析第三方应用的通讯协议。配合 Charles 的 SSL 功能,Charles 还可以分析 Https 协议。

Charles 是收费软件,可以免费试用 30 天。试用期过后,未付费的用户仍然可以继续使用,但是每次使用时间不能超过 30 分钟,并且启动时将会有 10 秒种的延时。因此,该付费方案对广大用户还是相当友好的,即使你长期不付费,也能使用完整的软件功能。只是当你需要长时间进行封包调试时,会因为 Charles 强制关闭而遇到影响。

Charles 主要的功能包括:

  1. 截取 Http 和 Https 网络封包。
  2. 支持重发网络请求,方便后端调试。
  3. 支持修改网络请求参数。
  4. 支持网络请求的截获并动态修改。
  5. 支持模拟慢速网络。

将 Charles 设置成系统代理

之前提到,Charles 是通过将自己设置成代理服务器来完成封包截取的,所以使用 Charles 的第一步是将其设置成系统的代理服务器。

启动 Charles 后,第一次 Charles 会请求你给它设置系统代理的权限。你可以输入登录密码授予 Charles 该权限。你也可以忽略该请求,然后在需要将 Charles 设置成系统代理时,选择菜单中的 “Proxy” –> “Mac OS X Proxy” 来将 Charles 设置成系统代理。如下所示:

之后,你就可以看到源源不断的网络请求出现在 Charles 的界面中。

截取 Https 通讯信息

配置想要抓取数据的地址

Proxy → SSL Proxying Settings,默认设置是抓取所有HTTPS地址的数据,这里可以设置为只抓取特定地址的数据。

在电脑上安装证书

Help → SSL Proxying → Install Charles Root Certificate。

设置HTTP和HTTPS代理

其他mac电脑走代理抓包方式 如果代理服务器(charles)跟客户端为同一台电脑采用 将 Charles 设置成系统代理方式

系统偏好设置 → 网络 → 高级 → 代理,端口号默认是8888,与Proxy → Proxying Settings 中的HTTP代理端口号相同。

到目前为止,就能抓取电脑应用中的请求响应数据了(比如谷歌浏览器中的请求响应数据)。

抓包工具charles修改请求和返回数据

数据篡改的主要使用场景:

(1)mock场景,mock入参和返回值参数,实现mock测试

(2)安全测试,对于支付金额等比较重要的字段,可以修改请求参数来进行安全测试

1.首先选择要篡改数据的接口,点击右键选择功能列表中的breakpoints。

2.清空请求列表

3.在终端重新发起请求,请求将会被拦截,会弹出当前页面,选择json text标签,篡改入参内容,比如讲needHotelData的数据改为false,点击execute按钮。释放请求。查看返回结果即可。

小技巧:修改时间过长可能导致接口请求超时,可以提前编辑好修改后的内容,进行整体替换

  • 12
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要使用Charles抓取HTTPS请求,首先需要安装并配置Charles软件。以下是在Windows系统上使用Charles抓取HTTPS请求的步骤: 1. 首先,下载并安装Charles软件。在安装过程中,确保选择安装Charles的SSL证书。 2. 打开Charles软件,并在菜单栏中选择“Proxy”>“SSL Proxying Settings”。 3. 在SSL Proxying Settings窗口中,点击“Add”按钮添加需要抓取HTTPS请求的域名。你可以输入一个具体的域名,比如example.com,或者使用通配符,比如*.example.com,以抓取该域名下的所有请求。 4. 确认勾选“Enable SSL Proxying”选项,并点击“OK”保存设置。 5. 在手机或电脑上,打开网络设置,并将HTTP代理设置为Charles的代理地址和端口号。默认情况下,Charles的代理地址是127.0.0.1,端口号是8888。如果你使用的是手机,还需要将手机连接到与电脑相同的局域网。 6. 回到Charles软件,在菜单栏中选择“Proxy”>“Start SSL Proxying”以启动HTTPS请求抓取。 7. 现在,当你在浏览器或其他应用程序中发起HTTPS请求时,Charles将自动捕获并显示这些请求。你可以在Charles的“Session”栏目下查看和分析抓取到的HTTPS请求。 请注意,由于HTTPS请求的加密性质,Charles抓取HTTPS请求时需要使用证书进行解密。因此,在首次访问某个网站时,你可能会收到一个安全警告。在这种情况下,你需要信任Charles的SSL证书才能继续访问网站并正常抓取HTTPS请求。 总结一下抓取HTTPS请求的步骤:安装并配置Charles软件,添加需要抓取的域名,设置代理,启动SSL代理,然后在Charles中查看和分析抓取到的HTTPS请求。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Charles抓取https请求详解](https://blog.csdn.net/WsXOM853BD45Fm92B0L/article/details/78139094)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [使用Charles进行HTTPS包](https://blog.csdn.net/chuyouyinghe/article/details/120236916)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值