一.Charles简介
Charles,是用Java开发的,所以跨平台,不仅可以在Mac上使用,Linux以及Window下都是可以使用的,当然需要安装JDK,才能运行,但目前是收费的。
二.下载
官网下载地址:https://www.charlesproxy.com/download/
有相对应的Mac版本、Linux版本及Window版本
下载到安装我就不啰嗦了!
我下载的是当前最新版本:4.0.2版本的(2017年3月3日)
默认情况下是连接你的mac的代理
三.破解
由于Charles是收费的,我们需要破解它,可以在网上直接搜索:Charles4.0.2破解的jar文件。
这里我已经下载好了
破解文件:http://download.csdn.net/detail/u014005316/9769617
直接把charles.jar替换,重新打开Charles即可,就不会提示试用期30天了。
由于我们主要做App开发,我们需要抓取移动设备上app的包
四.HTTP抓包
- 打开Charles程序
- 查看Mac电脑的IP地址,系统偏好设置->网络就可以查看到了,比如我的ip地址是:192.168.0.110
- 打开手机上的wifi连接
代理设置改成手动,输入主机名:192.168.0.110(我mac的ip地址),端口:8888
打开Charles,点击Proxy,选择Proxy Settings,输入端口号:8888
OK,就可以进行http抓包啦!
这是我的手机上一款http请求的app
五.HTTPS抓包
https抓包相对来说,稍微麻烦一点
1. 给Mac安装证书
打开证书,信任证书
2. 给手机安装证书
打开Charles
在Menu选择Help > SSL Proxying > Install Charles Root Certificate on a Mobile Device or Remote Browser
点击后,弹出对话框
在手机浏览器上输入:chls.pro/ssl(可能不一样,以上图弹出的对话框为准)
随便输入一个证书名称,点击确定!
3.开启SSL代理功能
在Menu选择Proxy->SSL Proxying Setting,选中Enable SSL Proxying,在Locations里面添加要使用SSL代理的网站,如果需要匹配所有的HTTPS网站则输入 * 号即可。现在即可拦截Https的数据包。port: 443 抓取HTTPS
点击OK
ok,可以进行https抓包啦!我以掘金App为例来抓包