码迷,mamicode.com
首页 > 其他好文 > 详细

网络抓包工具Charles的介绍与使用

时间:2015-12-22 10:30:39      阅读:197      评论:0      收藏:0      [点我收藏+]

标签:

       在复杂的App开发过程中,我们会涉及各种复杂的网络操作,各种API的调用和数据接收。如果我们只是通过控制台来查看网络的输入输出,就会非常麻烦。在Mac上有一款非常优秀的网络抓包工具——Charles,在iOS开发中也是常常用到。今天我们就来介绍如何安装使用Charles。关于Charles安装包、破解包和证书我已经上传至网盘:http://pan.baidu.com/s/1numMoTr    。大家可以下载直接安装。操作步骤如下:

(1)直接安装dmg文件,安装过程很简单,就不赘述了。由于Charles是收费的,安装后只有30天的试用期。我们就需要破解。

(2)打开Finder中的应用程序-->Charles-->右键显示包内容-->Contents-->Java,然后使用我破解包中的charles.jar替换原有的charles.jar文件。这样就能破解Charles了。破解成功后的Help显示如下:

技术分享


(3)下面就是来使用Charles进行抓包。抓包分为Http抓包和Https抓包。下面分别讲解:

【Http抓包】

1.现在我们默认是在进行iOS开发,首先确保iPhone和Mac是在同一个局域网下(连同一个WiFi)。然后查看Mac的IP地址(打开网络偏好设置即可看到),假设我的IP地址为:192.168.1.2.    然后进入iPhone,进行HTTP代理设置,从关闭改为手动,在服务器位置输入刚才Mac的IP地址。在端口位置输入8888.如图:

技术分享


2.然后就可以开始进行抓包了。打开Charles,会弹出是否允许,选择Allow即可。然后在iPhone上打开你要抓包的App,在Charles上就会看到抓包结果:

技术分享



【Https抓包】

Https抓包配置比Http抓包配置麻烦一点点。首先把证书(在压缩包中的crt文件)安装到iPhone上。安装完成以后,其他配置都和http抓包一样。额外的配置如下(我是最新的3.11版本,配置可能与其他网上3.x版本的配置稍有不同):

1.点击Proxy-->SSL Proxying Settings ,就会出现如下界面。

技术分享 。


(2)选中Enable SSL Proxying。并在Locations处进行如下配置,点击Add,出现如下界面,Host处可以随意填一个主机名(如:api.instagram.com,大家貌似都用这个),然后在Port端口处填443.如图:

技术分享 。


技术分享


(3)经过以上步骤,就可以进行Https抓包了。其他操作过程同http抓包。


    总结,当你抓包结束后,就要去iPhone里把网络的HTTP代理关闭,否则可能会造成无法上网的情况。这里只是对抓包的配置进行简单的介绍,抓包本身还是博大精深的,我接下去会继续进行详细的讲解。



github主页:https://github.com/chenyufeng1991  。欢迎大家访问!

最近极客学院Wiki正在进行IT职业技能图谱的制定,我主要负责iOS方向,大家感兴趣的可以一起参加,有问题或者修改可以直接给我发issues或者pull request。https://github.com/chenyufeng1991/skillmap  。


网络抓包工具Charles的介绍与使用

标签:

原文地址:http://blog.csdn.net/chenyufeng1991/article/details/50370248

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!