Charles:移动端抓包工具安装使用和经验小结

版权所有,禁止匿名转载;禁止商业使用。

1.下载并安装Charles.

mac版和window版都有,下载可以去Charles官网(http://www.charlesproxy.com/download/),下载下来的是试用版(截止2013.08.25最新版本是3.7),虽然只是试用版有一定限制,比如开机delay10s,每隔5分钟提示你转为试用版,30分钟后强行关闭,但鉴于他强大的功能,30分钟其实已经足够.目前3.6在百度上有破解版,自行百度之.

2.配置Charles.

1)打开charles,proxy标签项关闭自身代理,此选项开启会抓取电脑的网络请求,影响我们测试。实际上我们在测试手机app并不需要,故关闭。

如下:

Charles,移动端抓包,抓包工具

2)设置pc端代理。如下图选择proxy setting.如下图所示:

Charles,移动端抓包,抓包工具

Proxies一项设置如下,默认端口为8888,用于手机连上代理的端口.

Charles,移动端抓包,抓包工具

接下来SSL一项如下设置:

Charles,移动端抓包,抓包工具

即允许ssl代理,下方的*.*是要通过add按钮添加进去的。在按”add”按钮之后两个输入框均输入”*”,”*”即可.

3) 设置允许代理的ip地址范围。打开proxy->access control setting,如下:

Charles,移动端抓包,抓包工具

将你允许的ip地址段填写进去。如下图:

Charles,移动端抓包,抓包工具

确定自己要填的ip地址段,window使用cmd命令行 输入ipconfig回车 即可看到自己目前所在的ip,如192.168.0.108(首先这个ip地址最好是无线路由分配的),即可以设置为192.168.0.0/24.如此设置之后192.168.0.0~192.168.0.255的地址均可以访问你的电脑,通过你的电脑进行代理上网。如下图:

Charles,移动端抓包,抓包工具

3.设置手机端的相关参数.

不同手机设置方法可能有所不同,以安卓手机(谷歌原生4.0以上系统)为例,进入系统设置-》网络,长按目前和pc端连接一样的路由名称,弹出修改网络,选择修改网络,如下:

Charles,移动端抓包,抓包工具

按照以上截图选择显示高级选项。配置刚刚pcip地址,和端口即可。

然后关闭pc端的防火墙,测试是否连接电脑成功。(此步骤很重要)

测试方法:点击随便一个应用(笔者启动的是今日头条),charlesStructure栏中有没有出现一些文件夹,类似下图,如果有则成功;

Charles,移动端抓包,抓包工具

**********charles常用的一些功能介绍:

1 忽略请求功能。由于某些时候我们只需要关注某一个应用的请求,所以过滤掉其他不需要显示的请求可以让我们集中精力在该应用.点击某行右键选择ignore(如下图),可以将此链接忽视,将干扰的网络请求屏蔽,防止影响我们测试:

Charles,移动端抓包,抓包工具

2 复制原链接。此功能可以复制请求的原链接,只要你使用Chrome浏览器安装了son viewer的插件,黏贴上去回车即可看到返回的数据结构。同时也方便于发给服务器的开发人员调试用。如下:

Charles,移动端抓包,抓包工具

3 清空捕获的网络请求,正常状态下在structure栏里按ctrl+a,然后按delete键,就可以清除所有捕获的网络请求,

4 查看请求的相关数据。如下图,overview可以方便的看出请求的时间长短,请求的大小和返回数据的大小,即数据请求的大概情况;

Request用于查看请求的参数是否携带正确。如下图:

Charles,移动端抓包,抓包工具

response可以查看返回的数据结构是不是我们想要的,如下图,可以明确的看到拿到的封面数据是否正确。

Charles,移动端抓包,抓包工具

当请求的是一张图片时,还可以直接用response-image查看图片的尺寸和图片,方便我们确认是否下载正确,如下图:

14.png

注:使用代理无法访问一些安全验证网站如新浪微博绑定页面,目前android版使用代理直接访问在某些机器上会直接闪退关掉该页面,故需要绑定时请关闭代理之后再连接上代理验证。

*************Charles目前尚有问题的地方:

1.同样设置在一些机器可以捕获到Google Analytics的请求,但有些不行,暂时还找不到原因.

2.暂时无法捕捉到微信等请求,可能因为使用的协议不同所以无法捕获,这也是其局限性之一.

3.在一些机器开启charles捕获链接时使用新浪微博登录时会出现崩溃现象,原因也暂时不明.

如果小伙伴们有找到关于以上问题的答案也欢迎和我们分享下


0 0