美文网首页网络
iOS-Charles(青花瓷)用法小结

iOS-Charles(青花瓷)用法小结

作者: chernyog | 来源:发表于2017-06-30 14:35 被阅读101次

前言

软件开发中,我们有时需要监控接口的请求和响应,或者篡改服务器返回的数据,以满足客户端的测试需求,在不麻烦别人的前提下,这时我们就可以使用Charles进行监控、抓包、改包等操作。

配置

安装Charles

TIPS: 示例中用的是v3.9.3版本

安装后,如下图:

Charles-icon@2x.png

设置HTTP代理

  • 让电脑和手机处于同一局域网内(手机连接电脑分享的无线网络也不行)
  • 修改手机连接的无线网配置-设置HTTP代理
    • 服务器:可以在电脑上查看连接的无线网IP
    • 端口:8888


      Charles-手机无线网配置@2x.png

监听请求

一般用法(监控网络请求)

配置好代理,打开Charles,打开需要监听的程序,这时Charles有可能会弹框,点击同意即可。界面如下图:


Charles-Sequence@2x.png

我们可以查看请求概况requestresponse等信息。

Tips:默认是Sequence(顺序)显示网络请求,这样可以看到请求顺序,但是无法直观地显示某个站点下的接口汇总,所以我使用Structure(结构、分类),如下图:

Charles-Structure@2x.png

高级用法(篡改请求和响应)

言归正传,说重点。想要在请求时,修改请求和响应信息,就需要给请求打个Breakpoints(断点)

添加断点

Charles-给接口添加断点@2x.png

进入断点

  • 当给某个接口添加断点后,再次请求接口,就会进入断点,如下图:


    Charles-进入断点Overview@2x.png
  • 这时我们可以执行取消(Cancel)、终止(Abort)、跳过(Execute)操作。

    • Cancel: 想当于没有打断点
    • Abort:终止请求,此时会请求失败(可能出现的错误信息:Request aborted by breakpoint)
    • Execute:执行过断点,接着往下执行请求

篡改Request

  • 通过断点,我们可以修改Request信息,如下图:


    Charles-进入断点EditRequest@2x.png
  • 这时我们可以修改请求头信息

篡改Response

  • 通过断点,我们可以修改Response信息,如下图:


    Charles-进入断点EditResponse@2x.png
  • 这时我们可以修改接口返回的json数据,一般情况下就不再需要麻烦服务端修改代码以配合我们测试了。

TIPS

  • 可以给某个接口添加断点,也可以在域名上添加断点,此时该域名下的所有接口都将被断点。
  • 不使用Charles时,建议关闭手机上的代理,否则手机联网有可能会出现问题,比如微信只会显示文字,加载不出来图片等等。。。

相关文章

  • iOS-Charles(青花瓷)用法小结

    前言 软件开发中,我们有时需要监控接口的请求和响应,或者篡改服务器返回的数据,以满足客户端的测试需求,在不麻烦别人...

  • 软件查询

    青花瓷破解版 青花瓷十大用法

  • 20170921-DirectByteBuffer 堆外内存

    java.nio.ByteBuffer用法小结 补充

  • IOS学习(13)-UITextView

    UITextView详解iOS开发系列之四 – UITextView 用法小结UITextView控件的用法详解

  • 2019-04-18:每日英语积累

    本文已收藏至:英语资料积累 in、on、at 时间用法小结: 基本用法: at+点时间,最小的时间,即几点or几点...

  • Delegate - 高级用法之多播委托

    iOS多播Delegate类——GCDMulticastDelegate用法小结 iOS 多播委托(GCDMult...

  • 学会使用MarkDown写笔记

    前言 简书使用MarkDown语言进行写作,MarkDown语言的主要用法涉及到字符的使用,用法小结如下(看到有一...

  • 2020-06-18

    GCD 源码 Git - rebase 用法小结 ReactNative源码解析——通信机制详解(1/2) Rea...

  • Markdown 用法小结

    Markdown 语法 标签: Cmd-Markdown 1. 斜体和粗体 使用 * 和 ** 表示斜体和粗体。 ...

  • With的用法小结

    with结构做定语,修饰前面的名词(紧跟的/不紧跟的都可) with结构修饰名词,with作后置定语,不紧跟前面名...

网友评论

    本文标题:iOS-Charles(青花瓷)用法小结

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