1 Charles安装

下载连接:https://www.charlesproxy.com/download/

破解Charles:

点击【Help】->【Register】,输入以下代码即可:

Registered Name : https://zhile.io

License Key:48891cf209c6d32bf4

2 HTTP抓包

(1)查看电脑IP地址

(2)设置手机HTTP代理

手机连上电脑,点击“设置->无线局域网->连接的WiFi”,设置HTTP代理:
服务器为电脑IP地址:如192.168.1.169
端口:8888

设置代理后,需要在电脑上打开Charles才能上网。(因为手机的所有请求必须走Charles转发,这也是Charles能抓包的原理,即利用中间人代理)

(3)电脑上打开Charles进行HTTP抓包

手机上打开某个App或者浏览器什么的,如果不能上网,检查前面步骤是否正确。

点击“Allow”允许,出现手机的HTTP请求列表。抓包案例如下:

3 HTTPS抓包

HTTPS的抓包需要在HTTP抓包基础上再进行设置。

如果不设置HTTPS代码,那么所有以https协议的网站都是加密的,也就说说不能看到原文,大概是下面这样:

如果你设置了HTTPS代理之后,则所有的请求数据都将以明文显示,这样对于程序员来说,可以更好的调试程序代码,如下所示:

以下为在HTTP抓包基础上进行HTTP抓包的进一步设置步骤:

(1)安装SSL证书到手机设备

点击 Help -> SSL Proxying -> Install Charles Root Certificate on a Mobile Device:

出现弹窗得到地址 chls.pro/ssl

在手机Safari浏览器输入地址 chls.pro/ssl,出现证书安装页面,点击安装
手机设置有密码的输入密码进行安装。

注意1:Safari浏览器输入这个网址chls.pro/ssl,安装不了证书的情况,需要注意:

  • 设置好手机HTTP代理

  • 电脑上Charles要开着

(2)证书信任设置

iOS 10.3系统及以上,需要在 设置→通用→关于本机→证书信任设置 里面启用完全信任Charles证书,打开信任正式按钮。

(3)Charles设置Proxy

Proxy -> SSL Proxying Settings…

勾选Enable SSL Proxying,点击Add:

Host设置要抓取的https接口,比如想抓这个:

Host填写:https://api.weibo.cn
Port填写:443

也可以直接设置所有网站:

(4)进行HTTPS抓包

让手机重新发送https请求,可看到抓包:

注意:不抓包请关闭手机HTTP代理,否则断开与电脑连接后会连不上网

Reference

写在最后

欢迎大家关注鄙人的公众号【麦田里的守望者zhg】,让我们一起成长,谢谢。
微信公众号