Android Api的那些事

前言

Android的开发是一个服务端与客户端协作的过程,但是在客户端开发中或多或少的会遇到关于Api请求的相关问题,比如为什么请求失败了,哪里请求失败了,以及这个请求的相关属性问题,在这篇文章,我们将介绍android api请求的相关技巧

Step 1

或多或少的,大家都知道Postman这个工具,这个工具的作用主要是用作测试接口,确定接口的可用性,以及在请求的相关结果的查看等功能,然后通过工具,我们可以在不编译运行android程序去获取api的返回结果,然后我们得到json后,在通过相关在线json工具进行格式化,然后我们就可以进行分析json的返回数据啦

Step 2

Charles是一个非常不错的抓包工具,在这个抓包工具中,我们可以抓取每一个请求,包括本地的pc web请求,同时也包含moblile的相关http请求

通过这种方式,我们就可以抓取到app中具有哪些的请求,然后我们就可以进行相关的分析与设计操作

但是Charles和模拟器绑定,需要几个操作:

  • Charles和模拟器(设备)需要在同一个局域网
  • 模拟器(设备)需要进行网络的代理设置(在这里,代理ip为我们的pc ip)

注意:8888为charles的代理端口,这个地方需要注意,然后我们打开Charles就会检测到mobile的请求了,这个时候allow请求即可

Step3

最近在开发app的时候,遇到这样的需求,H5–> Native app ,再加上服务端的一些问题,所以,我们只好自力更生了,我的操作是:首先通过charles去抓取到相关的接口,然后得到json,然后去编写实体类,然后在去进行相关的native app的请求

在这里,我们需要打开:

  • 开发工具
  • 模拟器
  • Chales

在这里,我们可以这么去理解:

分析:我们的ide去发出run的命令,然后发出到模拟器,模拟器在进行http请求后,charles进行拦截,拦截后进行request请求,请求后得到的response后返回到charles,然后,得到数据后返回到模拟器中,然后,我们的模拟器的logcat日志就会被ide去捕捉到(以上分析是自己的分析)

在这里,我们查看下charles给我们捕捉到的信息:

通过这些数据,我们可以充分的分析这次请求的所有的参数设置

对于Post的请求,charles也可以帮我们捕捉到:

通过这些参数,那么,我们就可以更加合理的去分析和完善我们的这次api请求

Step4

对于抓包,我们可以扩展下,比如,我们可以去抓取某些app的api请求,在这里我们要排除下https的请求,以及对相关api对特殊处理的请求,这些请求我们的抓包工具是无法抓到的

在开发中,通过相关的工具的协作,可以提高我们的开发效率


Step End

Charles 4.1.1版本注册码

Registered Name: 	https://zhile.io
License Key: 		48891cf209c6d32bf4
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值