学习笔记之Charles抓包工具使用以及抓取API接口

原创 2016年12月19日 10:48:52

抓包(Packet Capture),实际上就是对网络请求(包括发送与接收)的数据包进行截获、重发、编辑、转存等操作,在Android下,也经常被用来进行数据截取等。学会抓包之后,获取某个App的API就是轻而易举的事了,当然,现在有很多App,都对API进行了加密验证,例如Mac校验。所以在这种条件下,调用人家的API就困难得多了。

抓包工具

抓包工具比较常见的是Fiddler,Wireshark等,个人比较喜欢Charles,官网,界面简洁人性化,只做数据截取的话,足够用了,并且同时支持Windows,Mac,Linux。下面只介绍在Windows下如何利用Charles进行抓包。官网下载链接:https://www.charlesproxy.com/download 

主界面



主机允许代理模式

菜单栏Proxy -> Proxy settings,Port设置一个不与电脑其他端口冲突的端口号,比如8888,并勾选Enable transparent HTTP proxying,点击OK,这样,就允许了HTTP代理模式。


主机ip地址

开始->运行->输入cmd->ipconfig 得到主机的ip地址。



客户端设置代理

Android须和主机处于同一个局域网下(连同一个路由器,同网段)。在Android中打开设置->WLAN->修改当前连接的Wifi->打开代理(手动)->输入主机ip地址及代理端口号->保存

如图手机客户端配置到此

截获数据包

前面设置完毕之后,当Android,有进行网络请求时,那么Charles可能会弹出一个对话框,确认是否允许代理,点击Allow,表示允许。如图


这个时候,请求的地址就会出现在左侧的structure栏里面,点击可以查看具体请求的信息。


HTTPS

HTTPS请求,响应数据可能会出现乱码,这时候就需要安装Charles的CA证书,下载后解压,双击crt文件,选择总是信任就可以了,在版本4以上安装证书不需要到官网下载,在charlses->Help->SSLProxying->InstallCharlesRootCertificate来安装证书,只要证书状态为没问题就是安装成功。如图


当然如果要抓取Android设备上的HTTPS请求,需要在Android上也安装一个证书,在浏览器输入这个网址:http://charlesproxy.com/getssl ,点击安装即可。


到此如果你的乱码问题还是没有解决,那么你需要在charles->proxy->SSL Proxying Setting 配置,勾选Enable SSL Proxying 并却Add Host:443,Prot:* 如图


至此Charlse的基本配置已经完成,抓取接口已经没有问题啦(如果不需要抓取电脑上的API接口,可以在Proxy->WindowsProxy勾选去掉,默认是选择的),当然charles还有其他挺多功能,比如模拟网速慢,断点,数据过滤,重定向等功能,这里就不一一介绍了,有兴趣的同学自行研究哈~

PS:官网下载的Charles是付费的,但是你可以度娘下载补丁包覆盖,这里提供Charles4.0.2-64位补丁包,在安装路径下的Charles\lib\替换charles.jar,这样就是破解版啦


版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhuiyi1820/article/details/53736173

charles抓包的安装,使用说明以及常见问题解决(windows)

charles抓包的安装,使用说明以及常见问题解决(windows)Charles 主要的功能包括:1 . 截取 Http 和 Https 网络封包。 2 . 支持重发网络请求,方便后端调试。 3...
  • zhangxiang_1102
  • zhangxiang_1102
  • 2017年09月05日 20:05
  • 3273

使用Charles进行移动APP抓包分析

一、简介Charles是目前最强大最流行的http抓包调试工具,Mac、Unix、Windows各个平台都支持。特别是做APP开发,调试与服务端的通信,Charles是必备工具。目前Charles是收...
  • suifeng3051
  • suifeng3051
  • 2016年08月01日 17:19
  • 24744

charles 设置HTTPS抓包

为什么抓取http可以,但抓https却抓不到或者抓取到一堆乱码呢? 因为http和https使用的是完全不同的连接方式,用的端口也不一样,http是80端口,https用的443端口;且; htt...
  • mengfeicheng2012
  • mengfeicheng2012
  • 2016年11月29日 16:21
  • 3945

网络抓包神器-Charles使用指南

1.概述Charles是目前最强大的http调试工具,在界面和功能上远胜于Fiddler,同时是全平台支持,这么好用的软件可惜就是收费的,网上是有破解版的Charles,学习交流可下载。2.安装首先需...
  • liulanghk
  • liulanghk
  • 2015年06月03日 10:51
  • 57946

Mac上的抓包工具Charles

今天就来看一下Mac上如何进行抓包,之前有一篇文章介绍了使用Fidder进行抓包http://blog.csdn.net/jiangwei0910410003/article/details/1980...
  • jiangwei0910410003
  • jiangwei0910410003
  • 2014年11月30日 09:29
  • 333933

JSON API免费接口 各种提供JSON格式数据返回服务网站的API接口

这里为大家搜集了一些能够返回JSON格式的服务接口。部分需要用JSONP调用。
  • youshi520000
  • youshi520000
  • 2016年05月24日 18:41
  • 9126

详解Android/IOS平台下抓包工具使用以及抓取API接口

抓包工具 Charles 主机允许代理模式 客户端设置代理 截获数据包 HTTPS 模仿一个app UI 请求接口封装 加密请求 Header抓包(Packet Capture),实际上就是对网络请求...
  • yyh352091626
  • yyh352091626
  • 2016年10月09日 10:06
  • 19561

国内大型网站提供的 IP API接口调用方法

今天群里有人问到 IP API 的调用方法,他说一些实用的jQuery代码片段中的 jQuery得到用户IP 不起作用。我查看了下,调用没有问题,于是想到应该是 GWF 干的好事。如我上网经常在墙外...
  • English0523
  • English0523
  • 2016年01月12日 14:56
  • 7750

charles抓接口步骤

安装步骤: 1,先配置Java环境;2将Charles拖到Application  3  在Finder中打开Charles,点击Helper --->register  输入账号 密码(注意不要加空...
  • cola_wh
  • cola_wh
  • 2015年08月22日 22:25
  • 2114

Charles抓包https接口指南

Charles抓包https接口 作为一名iOS攻城狮,如果你没有听说过青花瓷这款软件,我只能说你还是回家洗洗睡吧。 最近在写一个需求,服务端不知道怎么设计接口。我只好找来了一个又类似...
  • Lea__DongYang
  • Lea__DongYang
  • 2017年06月15日 17:53
  • 6056
收藏助手
不良信息举报
您举报文章:学习笔记之Charles抓包工具使用以及抓取API接口
举报原因:
原因补充:

(最多只允许输入30个字)