第一篇 第一节 APP端--抓包工具Charles之简单使用(初学者)

来源:互联网 发布:linux syslog debug 编辑:程序博客网 时间:2024/06/05 06:20

                                                                              抓包工具Charles之简单使用                                

     

  1. Charles的安装

         1.1安装前准备工作:安装Charles前确保Java虚拟机已成功安装,可在cmd窗口输入Java  -version,出现以下窗口,则表示安装Java虚拟机已安装成功,

                                        图1   

              若未安装成功,直接网上搜索JDK下载安装,然后再配置Path环境变量:我的电脑---鼠标右键“属性”--高级系统设置---环境变量--系统变量中双击“
                     Path(PATH)'‘---将Path/PATH的原变量值后增加分号+JDK安装路径:  ;jdk安装路径-----确定---确定--确定,然后cmd窗口输入Java  -version,若还
                     是不成功,检查自己环境变量值确定没错,就重启电脑再试试
     1.2安装Charles
        在这个网址:https://www.charlesproxy.com直接下载,一般建议下载破解版的,因为这个抓包工具是收费的,按照安装指导一步一步走就可以安装成功了
 2. Charles的使用:APP+WEB
    2.1 APP端抓包:
        2.1.1 抓包准备:
            1)手机端应该与电脑端连接同一wifi,此时Charles已打开
            2)在手机端配置代理(以华为Mate8为例):设置--wifi--长按当前连接Wifi--修改网络--显示高级配置--代理‘手动’---设置:服务器主机名为
               电脑IP,设置服务器端口号为8888---点击‘保存’---Charles界面点击“允许”
               备注:在这里,服务器主机名处信息可以在cmd窗口输入Ip查询命令查到,也可在Charles---Help ---Local IPAddress中查询
           3) 确认自己当前测试的url是
       2.1.2 开始抓包(测试的url是:papi.funmart.com,抓取在FunMart下订单的功能数据):
                    手机端进行:加商品至购物车product---进入购物车cart---购物车点击CheckOut进入支付方式选择界面(checkout)---点击Place Order(Place)进入
                       支付界面---取消支付,生成订单(Order)
           此时,正如图2中,会对应圈中的信息有:Product--cart---Checkout---Place,这些目录下就是在手机端进行的操作过程请求以及服务器端返回信息
           图2
        若要查看Order信息,在这里可使用JSON方式查看,参考图3,截图右侧偏上是客户端请求数据,右侧下方数据就是服务器的响应数据
         图3
          所以说,使用Charles抓包工具,完全可以清晰看懂数据,当出现一个问题时,也可以清晰的看到是客户端请求发送失败还是客户端请求发送成功但服务器
          返回数据错误
           
     2.2 WEB端抓包:
       相比APP端,WEB端是无需进行代理设置,原因就是:WEB端测试不就是在电脑上进行的么,当然不存在WIFI需要统一的问题喽
       其他的基本上跟APP是一样的,包括看数据,不过一般不推荐在进行WEB测试时使用该抓包方式,因为浏览器有自带的抓包功能,这个会在
       《第二篇  第一节 WEB端数据抓包F12》中介绍
  3. 相关  
            也许很多人看了也一脸懵逼,为什么你知道订单信息在Place中的,为什么你知道购物车商品列表信息在Cart中呢等等,这些问题就涉及到接口,
         每一个项目,都会有接口文档,接口文档它可以告诉你你想要的信息是在哪个模块中的,这个模块的命名是什么,如果了解了这些,对于定位
        信息找所需数据就节约很长时间了,对于接口,会在下一节《第二节  APP端--接口测试工具Postman之简单使用》
            关于这一节对于Charles抓包工具的使用,只是简略的介绍的其基本功能,像添加断点,模拟网路慢等功能都没有介绍,说实话,因为本人暂时没用过,
      所以 不太清楚哦,后续如果自己学了用了熟悉了之后,再补充哈~
          第一次写,有不对的地方,多多包涵,也希望有幸可以向大神们请教~ ~ ~