下面是整个链接。

http://www.winshy.com/2013/08/something_about_charlesproxy/?utm_source=rss

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

从事移动互联网一年多的时间,等到去年才慢慢和开发打交道,由于创业公司人手不足,没有专门测试人员,很多时候产品人员QA质量验收的时候,就会面临黑盒测试测试不全面,通讯请求盲人摸象的局面.通过一段时间的摸索,找到了Charles这款适合移动端抓包工具,的确比之前方便了很多,主要体现在:

1.可以查看具体的请求链接,查看有没有多余对服务器的请求,能否更好的优化和服务器之间的通讯.

2.可以直接查看竞品或者其他优秀app的通讯使用的数据结构,精简自己的数据结构,方便节省流量和提升效率

3.可以直接查看统计请求,方便调试有没有入库,或当发生加载异常等情况时,可以第一时间发现问题而无需等开发人员进行真机调试才能判断是服务器还是客户端的问题.

鉴于以上优点,如果路过围观的小伙伴们对这些优点感兴趣又和我有一样的苦恼,不妨继续往下看,以下是安装过程和在使用中的一些经验.

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并不需要,故关闭。

如下:

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

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

接下来SSL一项如下设置:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Charles 抓包的工具的更多相关文章

  1. charles抓包工具的中文乱码解决方法

    charles是 MAC上最好用的抓包工具.charles 网上的参考文档已经很多,我就不再赘述啦.只是说说我在安装过程遇到的问题和解决方法,仅供参考. charles抓包的数据中的中文内容显示乱码, ...

  2. Charles抓包工具使用

    Charles抓包工具使用和进行接口数据模拟 打开软件,选择Tools  >>  Map Local  >>  勾选enable  >>  add  >> ...

  3. Charles 抓包工具(新猿旺学习总结)

    Charles 抓包工具安装机操作 1.Charles 抓包工具是代理服务器工具,可以拦截数据,进行更改,返回数据,以实现前端后台的请求和响应数据的测试2.Charles 菜单介绍 Charles抓包 ...

  4. Charles 抓包工具安装和采坑记录

    Charles 抓包工具安装和采坑记录 网络抓包是解决网络问题的第一步,也是网络分析的基础.网络出现问题,第一步肯定是通过抓包工具进行路径分析,看哪一步出现异常.做网络爬虫,第一步就是通过抓包工具对目 ...

  5. charles抓包工具使用指南

    前言 移动APP抓包 PC端抓包 查看模式 其他功能 问题汇总 1. 前言: Charles是一款抓包修改工具,相比起burp,charles具有界面简单直观,易于上手,数据请求控制容易,修改简单,抓 ...

  6. Charles抓包工具的使用(一)

    前提:charles的说明 Charles其实是一款代理服务器,通过过将自己设置成系统(电脑或者浏览器)的网络访问代理服务器,然后截取请求和请求结果达到分析抓包的目的.该软件是用Java写的,能够在W ...

  7. Charles抓包工具的用途及应用

    Charles抓包工具的用途: 排查问题,测试异常情况 注意:Charles不能直接抓https请求的包,需要用https://www.jianshu.com/p/ec0a38d9a8cf这个方法去配 ...

  8. charles抓包工具分享

    今天,给大组内QA做了一次分享,主要面向移动端测试,介绍了我平时在测试工作中用到的功能,大家都积极响应,现场搭环境,现场操作,现场提问解答,最后大家都成功的利用起来了,感觉很有成就感.下面介绍我今天分 ...

  9. Charles 抓包工具的使用

    抓包工具有很多,目前用过的有Charles, Fiddler, burpsuite.下面主要是Charles 的应用实例. 一. 用Charles抓包 1. PC 抓包 打开Charles, 确保“录 ...

随机推荐

  1. android自定义SlideMenu源码详解之最简单侧滑实现

    实现原理:在一个Activity的布局中需要有两部分,一个是菜单(menu)的布局,一个是内容(content)的布局.两个布局横向排列,菜单布局在左,内容布局在右.初始化的时候将菜单布局向左偏移,以 ...

  2. android 使用LruCache缓存网络图片

    加载图片,图片如果达到一定的上限,如果没有一种合理的机制对图片进行释放必然会引起程序的崩溃. 为了避免这种情况,我们可以使用Android中LruCache来缓存下载的图片,防止程序出现OOM.   ...

  3. SVN客户端使用手册

    使用svn进行源代码版本控制,代码管理利器. 优点: 使用方便,与文件管理器集成.速度快,稳定. 实现代码比较,比如对历史和当前代码进行比较. 解决多人同时编写代码时代码重复修改困难. 安装: 下载网 ...

  4. [洛谷P4889]kls与flag

    题目大意:有$n$根竹竿,第$i$根竹竿在$i$位置,第​$i$根竹竿高度为​$h_i$,每根竹竿可以向左倒或向右倒,问有几对竹竿倒下后顶端重合. 题解:求出每根竹竿倒下后的位置,离散化,记录一下每个 ...

  5. 在浏览器中进行深度学习:TensorFlow.js (八)生成对抗网络 (GAN

    Generative Adversarial Network 是深度学习中非常有趣的一种方法.GAN最早源自Ian Goodfellow的这篇论文.LeCun对GAN给出了极高的评价: “There ...

  6. POJ 3041 Asteroids | 匈牙利算法模板

    emmmmm 让你敲个匈牙利 #include<cstdio> #include<algorithm> #include<cstring> #define N 51 ...

  7. Windows域同步检查repadmin

    C:\Users\>repadmin /show replUsage: repadmin <cmd> <args> [/u:{domain\user}] [/pw:{pa ...

  8. windows 系统下git 的安装

    在linux系统下,可以直接在命令窗口安装和使用git.但是,在windows系统下,想要达到同样的效果,可以安装git,使用git bash到达效果.具体安装步骤如下: 第一步:官网上下载git 网 ...

  9. 牧场行走(LCA)

    神奇传送门 好吧,这题很有意思.. 第一眼撇的时候还以为是(SPFA)呜.... 然后发现要Q次询问就想到了LCA 但是发现不是求LCA.. 于是想到了一个神奇的定律: 两点的LCA一定在u到v的最短 ...

  10. UVA 306 Cipher

    题意 :lucky cat里有翻译.英文也比较好懂. 很容易发现有周期然后就拍就好了 注意每组数据后边都有空行 包括最后一组.一开始以为最后一组没有空行.唉.. #include <map> ...