zoukankan      html  css  js  c++  java
  • Android 常用抓包工具介绍之Charles

    Charles是一款抓包修改工具,相比起TcpDump,charles具有界面简单直观,易于上手,数据请求控制容易,修改简单,抓取数据的开始暂停方便等等优势!前面介绍了如何使用TcpDump抓包,下面给大家介绍一下Charles的使用。

    Charles抓包

    Charles是一个HTTP代理服务器/HTTP监视器/反转代理服务器。它允许一个开发者查看所有连接互联网的HTTP通信。这些包括request、response现HTTP headers(包含cookies与caching信息)。

    1、配置抓包环境

    1)下载Charles

    http://www.charlesproxy.com/

    2)安装Charles

    下载完毕之后,直接进行安装即可正常使用

    (ps:不注册的话,每次使用30分钟,工具就会自动关闭)。

    Android 常用抓包工具介绍之Charles

    2、使用Charles进行抓包

    1)Http抓包

    Android 常用抓包工具介绍之Charles

    i.打开Charles抓包工具

    Android 常用抓包工具介绍之Charles

    ii.打开网络偏好设置查看本机IP地址为:10.1.1.139

    注:Android 设备需要与PC连接同一网段

    Android 常用抓包工具介绍之Charles

    iii.连接同一WiFi后设置本机代理

    Android 常用抓包工具介绍之Charles

    iv.这里的IP地址为:10.1.1.139;端口号默认为:8888

    Android 常用抓包工具介绍之Charles

    v.在Charles上查看即可

    2)Https抓包(中间人)

    a)下载Charles证书

    如果要查看Https的数据需要安装Charles的证书

    下载地址: http://www.charlesproxy.com/assets/legacy-ssl/charles.crt

    b)安装Charles证书

    将下载完成的charles.crt证书push到Android设备上(也可用常用工具)

    $ adb push charles.crt /sdcard/

    Android 常用抓包工具介绍之Charles

    i.进入设置à安全à从手机存储卡安装证书

    Android 常用抓包工具介绍之Charles

    ii.找到charles.crt点击安装

    Android 常用抓包工具介绍之Charles

    iii.输入证书名称为:charles

    注:点击确认后需要设置手机解锁密码

    Android 常用抓包工具介绍之Charles

    iv.安装成功后即可通过Charles查看Https的数据了

    c)添加需要查看的Https地址

    Android 常用抓包工具介绍之Charles

    i.点击ProxyàSSL Proxying Settings…

    Android 常用抓包工具介绍之Charles

    ii.在SSL Proxying中点击Add添加Https域名

    Android 常用抓包工具介绍之Charles

    iii.可在charles中查找需要查看的Https域名复制到Host中点击Ok即可

    Android 常用抓包工具介绍之Charles

    iv.配置完成后重新访问Https域名,即可查看Https数据

    3、使用Charles模拟弱网环境

    测试过程中经常需要模拟网络环境,那么如何通过Charles来模拟弱网呢?

    Android 常用抓包工具介绍之Charles

    i.选择ProxyàThrottle Setting…

    Android 常用抓包工具介绍之Charles

    ii.勾选Enable Throttle并选择需要设置的网络环境即可

    4、使用Charles设置断点

    Charles能在网络访问过程中设置断点,对于开发者和测试人员来说,堪称神器。它能够断到发送请求前(篡改Request)和请求后(篡改Response)

    1)使用Breakpoint Settings设置断点

    Android 常用抓包工具介绍之Charles

    Android 常用抓包工具介绍之Charles

    2)选中域名插入断点

    Android 常用抓包工具介绍之Charles

    i.右击选中需要修改的域名,点击Breakpoints

    Android 常用抓包工具介绍之Charles

    ii.重新访问该域名,选择Edit Request进入修改页面

    Android 常用抓包工具介绍之Charles

    注:Charles能够修改Request的:URL、Headers、Text、Raw;

    以及Response的:Headers、Set Cookie、Text、Html、Raw;

    这里以Request的headers参数为例进行修改

    Android 常用抓包工具介绍之Charles

    iii.这里查看原Headers携带参数为:{NBSHeaderTest1,NBSApp;b,NBSApp}

    现在通过断点方式修改为:{NBSHeaderTest1,TingyunTest}

    Android 常用抓包工具介绍之Charles

    iv.修改完毕后点击Execute查看Request中的Headers已经修改为NBSHeaderTest1 TingyunTest

    5、使用repeat测试

    在Charles中可以通过repeat和repeat Advances来重复发送请求

    Android 常用抓包工具介绍之Charles

    repeat Advances可以自定义重复次数和重复间隔

  • 相关阅读:
    OSGi系列 Apache Felix初体检
    OSGi系列 我理解的OSGi
    OSGi系列 开发服务端Web应用之一:Servlet实现
    10 Productivity Tips
    在DotNetNuke中通过修改ascx文件源码自定义界面
    DNN4.3.3的版本开发的模块.没登陆DNN的情况下,按钮的事件有时候执行,有时候怎么点都不执行
    DotNetNuke(DNN)网站发布、部署、迁移和重建
    使用3dmax 9.0导入Illustrator 文件时提示"Line in file exceeds 255 characters"
    ”A page can have only one serverside Form tag“错误
    DotNetNuke出错:“Runat 属性必须具有值 Server(The Runat attribute must have the value Server Error)"
  • 原文地址:https://www.cnblogs.com/hushaojun/p/6083874.html
Copyright © 2011-2022 走看看