您的位置:首页 > 其它

MAC上的抓包工具charles的安装与使用

2016-10-27 11:50 1191 查看
Charles是mac端的一款截取与分析网络请求的工具,在网络开发中使用其作分析,可以大大提高我们的开发效率。比如可以查看网络请求、模拟网络延迟等等。

下载

当前的破解版是3.10.1 .亲测在10.10.5系统上可以正常运行。下载地址:http://pan.baidu.com/s/1kT4cM6j安装正常安装,如果在安装过程中,弹出下面的框,去下载相关的文件。

下载地址:https://support.apple.com/kb/DL1572?locale=zh_CN这个已经在上面的下载地址里面了,名字是javaforosx.dmg破解第一步:安装完后打开应用程序,选择Charles,选择显示包内容

第二步:将下载的文件里的Charles.jar 替换掉包内容里的Charles.jar

重新打开后,破解成功。如何抓取手机设备的网络请求:1、查看Mac电脑的IP地址,系统偏好设置->网络就可以查看到了,比如我的ip地址是:192.168.26.4


2、打开iOS设置,进入当前wifi连接(Mac在一个局域网内),设置HTTP代理Group,将服务器填为上一步中获得的IP,即192.168.26.4,端口填8888:

3、打开Charles,Charles会弹出确认框,点击Allow按钮即可

接下来,就可以进行抓包操作了。

怎么用charles?

charles有两种显示模式 ,
Structure模式的优点 :
以域名划分请求信息 可以很容易定位需要分析和处理的数据。
清晰看请求的数据结构,



structure模式Sequence模式的优点 :
请求快就在前面显示, 因为这里是以数据请求的顺序去执行的
可以很清晰的看到全部请求,(包括资源请求,图片,文本,音乐等等)



Sequence 模式

charles的一些基本功能

重复请求功能



选择Repeat


设置重复请求次数查找功能
例如我需要找刚才一堆URL的东西中找到我需要的,后台告诉你,返回是通过guid作为标识的,一搜就出来了



Charles的更多应用

1、过滤网络请求

有时候我们只想抓取某个主机的网络请求,我们可以设置过滤网络,在Proxy菜单中的Recording Setting中,我们选择include标签,可以在里面添加一个白名单,这样Charles就只截取在这个主机下的请求: 


如果弹框没有出现,将charles切换为小窗口

2、模拟限速网络

很多时候,我们需要测试在网络不佳时应用请求的相关数据,我们可以模拟设置限速网络,在Proxy菜单中的Throttle Settings中将,Enable Throttling勾选,并可以在下面进行网路设置,only for selected host可以设置一个指定的主机访问进行限制网络。 


3、修改网络信息,多次请求

在测试接口时,有时候我们需要反复进行不同参数的接口请求,Charles也支持我们进行请求参数的修改和多次请求,在请求上点击右键,现则edit: 



其中的参数,请求类型等我们都可以修改,之后点击execute进行重新请求 


批量请求选择repeat advanced....


<code class="hljs cs has-numbering" style="display: block; padding: 0px; background-color: transparent; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-top-left-radius: 0px; border-top-right-radius: 0px; border-bottom-right-radius: 0px; border-bottom-left-radius: 0px; word-wrap: normal; background-position: initial initial; background-repeat: initial initial;">iterations:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">10</span> <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">//请求次数</span>
concurrency:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2</span> <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">//请求的并发数</span>
show results <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">in</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">new</span> session <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">//新建一个session窗口</span>
delays <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">//请求延迟</span></code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; background-color: rgb(238, 238, 238); top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right;"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li></ul><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; background-color: rgb(238, 238, 238); top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right;"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li></ul>

六、Charles 网络请求重定向

tools->map remote 



参考博客:http://www.cnblogs.com/jys509/p/4925269.htmlhttp://blog.csdn.net/u010187139/article/details/51986854
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: