美文网首页
为了学会 Charles,我拼命了

为了学会 Charles,我拼命了

作者: unique_a311 | 来源:发表于2020-11-30 22:32 被阅读0次

简介

Charles 是在 PC 端常用的网络封包截取工具,在做移动开发时,我们为了调试与服务器端的网络通讯协议,常常需要截取网络封包来分析。除了在做移动开发中调试端口外,Charles 也可以用于分析第三方应用的通讯协议。配合 Charles 的 SSL 功能,Charles 还可以分析 Https 协议。

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

Charles 主要的功能包括:

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

同类型的工具还有 大名鼎鼎的 Fidder

使用背景

在与公司 App 端📱同事 调试接口 时,有的时候可能会出现一些非常 莫名其妙 的问题。有的时候可能难以定位这个问题到底是属于前端展示 Bug :bug: 还是说接口 数据异常

通常这个时候,可能后端就需要去服务端看日志 然后结合日志数据进行排查。但是限于工具 网络等等复杂的情况,这样的方式其实真的蛮低效的。

这个时候就需要这样的一个工具,可以实时的看运行 App 的接口返回情况。结合前端 视图 展示,能在很短的时间内找到问题出现的原因。这样就可以快速的修复问题了。

下载、破解

官网下载地址。 地址

Charles 是收费软件,可以免费试用 30 天。试用期过后,未付费的用户仍然可以继续使用,但是每次使用时间不能超过 30 分钟,并且启动时将会有 10 秒种的延时。因此,该付费方案对广大用户还是相当友好的,即使你长期不付费,也能使用完整的软件功能。

但是,我选择破解 😂,我用 Charles 是来提升排查问题的时间的。结果你给我搞这些东西 我就受不了了。。。。主要还是破解比较容易 💩。哈哈哈哈

破解网站

选择当前 自己的版本 下载一个 Jar 包就可以了。

Charles 配置

当 Charles 安装好之后,这个时候就可以抓取 Http 的包了,但是我们为 App 提供的接口 一般都是 Https 的。所以我们需要安装证书。

安装证书

Help -> SSL Proxying ->Install Charles Root Certificate

证书安装好之后,还需要信任一下。就可以了

Https 抓取配置

image-20200906192152105 image-20200906192430874

iPhone 抓包配置

这里为什么是 iPhone 抓包配置,主要是因为 Android 抓包配置太麻烦了。然后 iPhone 就只需要简单的安装证书就可以了。

image-20200906192702063

如上图,点击 Install Charles Root Certificate on a Mobile Device Or Remote Browser

image-20200906194610306

点击之后的提示框中 192.168.1.106:8888 为手机将要设置网络代理的地址。chls.pro/ssl 为手机下载证书地址。

确认手机和 电脑 在同一个网络下,访问 chls.pro/ssl 下载并安装证书。而后信任证书。

安装证书

image-20200906194657106

信任证书

设置 - 通用 - 关于本机 - 证书信任设置 - 勾选安装的证书

image-20200906194737603

手机配置代理

在将 WIFI 的代理配置成 192.168.1.106. 这样就可以顺利抓取到 手机的 Https 的包了。

image-20200906194818186

完成 上诉设置后,iPhone 就可以抓包了。

Chrome 抓包配置

Chrome 抓包配置和 手机差不多,也是需要安装插件,然后配置代理。

配置代理,在 设置 - 高级 - 代理配置中。配置为 Charles 代理。

功能介绍

Repeat

将已执行过的请求重复执行。

应用场景,服务器压力测试

Compose

临时修改一些请求的参数,点击 Execute 就可以已修改后的请求发送。

<img src="https://gitee.com/xiaoxiunique/picgo-image/raw/master/atips/image-20200906200920257.png" alt="image-20200906200920257" style="zoom:50%;" />

Rewrite

Rewrite 功能功能适合对某一类网络请求进行一些正则替换,以达到修改结果的目的

<img src="https://gitee.com/xiaoxiunique/picgo-image/raw/master/atips/image-20200906200850447.png" alt="image-20200906200850447" style="zoom:50%;" />

Map Remote Config

地址从定向,将访问 A 服务器的请求 代理到 访问 B 服务器

<img src="https://gitee.com/xiaoxiunique/picgo-image/raw/master/atips/image-20200906200704642.png" alt="image-20200906200704642" style="zoom:50%;" />

Map Local Config

将指定请求的 响应 替换为 本地文件

<img src="https://gitee.com/xiaoxiunique/picgo-image/raw/master/atips/image-20200906200806371.png" alt="image-20200906200806371" style="zoom:50%;" />

开源项目推荐

SCHEDULE-BILIBILI

只有 Js 能干点啥,JS 和 Github Actions 实现哔哩哔哩每日自动签到、投币、领取奖励。🐄 🍺

IDEA-TopTips

IDEA 宇宙最强操作技巧,错误此项目 后悔一生。🐄 🍺

相关文章

  • 为了学会 Charles,我拼命了

    简介 Charles 是在 PC 端常用的网络封包截取工具,在做移动开发时,我们为了调试与服务器端的网络通讯协议,...

  • 为了……

    为了团结要学会忍气吞声 为了薪金要学会勤勤恳恳 为了事业要学会昼夜拼命 为了安宁要学会低调做人 为了父母要学会孝敬...

  • 2018-02-09

    现在的我们都是拼命三郎了,谁都在拼命,为了以后? 小学拼命为了初中,初中拼命为了高中,高中拼命为了...

  • 认真的自己

    高中为了高考,我努力拼命,可到了大学,我学会了偷懒,学会了作弊,学会了走捷径,可慢慢的我内心感到不安,那些轻易得到...

  • 中国人的拼命

    中小学生为了分数拼命, 大学生为了工作拼命, 毕业后为了房子拼命, 有了孩子为了孩子拼命, 上了年纪为了健康拼命。...

  • 【付宇论金】11.1黄金延续弱势震荡,原油破位还要跌附铜策略

    工作是为了生活固然重要,但绝不是拼命地为了赚钱而去工作,要想办法学会让金钱拼命地为你去赚钱才是最终目标。 【黄金行...

  • Mac Charles安装和使用

    链接 十分钟学会Charles抓包(iOS的http/https请求)解决Charles无法正常抓包iOS 11中...

  • 为了什么

    自己拼命学习,拼命工作,拼命挣钱,为了什么!为了少问妈妈要钱,为了人家看得起自己,为了孩子有钱好花,为了老公...

  • 愿你为之拼命的,都为你想要

    人生在世,活着二字。我们为了钱拼命,为了权拼命,为了理想拼命,为了爱人拼命······我们想要的越来越多,但如果生...

  • Charles使用

    Charles 简介 Charles 是在 Mac 下常用的网络封包截取工具,在做 移动开发时,我们为了调试与服务...

网友评论

      本文标题:为了学会 Charles,我拼命了

      本文链接:https://www.haomeiwen.com/subject/dbzdwktx.html