网络抓包工具Charles使用

在作Android应用开发时,几乎每一个项目都会涉及到与服务器打交道,也就是少不了与服务端人员的接口调试过程,在开发过程当中对于接口的调试能够很简单的用debug既可很清楚知道客户端发送的和服务端返回的数据是否正常,可是更加通用直观的方式则是经过网络抓包工具来进行,由于当导出apk以后,就没办法debug了,这时用抓包工具就很是方便,打开app点击与服务端请求的地方就能看到,而不用链接USB数据线去查看log,网络抓包工具市面上有不少种,根据我的的喜爱选择一款既可,这里我在工做中使用的是Charles,也就是这篇博文要对其进行介绍的,话很少说,让咱们开始使用它吧~~~服务器

第一步:安装网络

首先上它的官网进行下载:http://www.charlesproxy.com/,具体介绍能够查看官网介绍,下面贴一张其官方介绍:app

我下载的是这个版本:工具

安装完以后,是须要注册码的,具体能够在网上进行找,我这个版本相关的注册码能够从这个连接中获得:布局

http://www.hiyoufu.com/?p=290测试

安装好以后,打开界面以下:网站

固然如今还不能抓包,紧接着须要进行配置,请看下一步。spa

第二步:配置debug

首先得保证手机链接的网络和电脑链接的网络须要在一个网段中,这是必要条件,若是不在则就没法达到抓包的目的,表现以下:3d

手机端:

电脑端:

从中能够看到,这两个ip都是在同一个网段中的,这个切记~

紧接着须要给手机设置代理,具体步骤以下:

怎么给网站设置代理这里就很少说,仍是列出其步骤:

长按已链接网络调出修改网络对话框:

点击进入网络设置界面:

勾选"显示高级选项":

将代理选为"手动":

下面就正式对其手机设置代理,那里面的代理选项怎么填写呢,请睁大眼睛:

因此设置该选项以下:

紧接着设置第二项:

那该端口号设置成多少呢?它来自于Charles软件代理设置中,以下:

因此,手机代理端口设置以下:

好了,到此为止代理设置已经设置完成。

【注意】:其它选项都保持默认既可。

当一切设置都就绪以后,下面就能够验证了,请继续看下面。

第三步:验证

在验证以前,须要切换一下Charles布局以下:

下面开始打开咱们的app,点击一下,看是否被电脑上抓到了,因为很差录屏,因此这里就用静态图片表示一下,不用动态方式来展示了,能知道意思就成:

 

那若是我想查看请求时携带的数据是否正常,能够经过下面来查看:

 

而服务器返回的数据也可能查看:

 这样就很方便客户端与服务端进行排查错误,另外还有一个小技巧分享,因为此工具会抓取全部联网的地址,可是对于开发者而言可能只会关心与本身项目接口相关的地址,那么能够进行地址过滤,以下:

 

因而能够进行过滤:

【注意】:有时可能会抓取不到,我本身也碰到过这种状况,这时将工具关了从新启动一下就能够了。

修改请求和返回数据:

在实际工做中,可能会有这样的一个场景,就是这个接口返回数据会有多个条件,而在开发时为了测试不去麻烦服务端的去改数据来模拟各个业务条件,能够在本地代码中写死来模拟,而对于QA而言在测试时不可能给他们打多个条件的包,因此最好是直接更改接口返回的接口来模拟各类条件的请求,而Charies能够很方便的模拟,下面来讲明下:

 

接着须要对添加的断点稍加设置一下:

点击确认以后,接下来就能够请求该接口,在服务器返回数据的时候,则会停住,供咱们去修改里面的数据去模拟:

这时,咱们为了方便测试,修改一下服务器返回的数据来测其它条件:

若是想修改请求的数据,则方法相似,只是须要将这个勾上既可:

至此,关于它的基本使用就到此结束,基本上知道这些就能够了,下回见~

相关文章
相关标签/搜索