设置Reason:最近接触一个APP后台项目,但是不知道APP各个操作访问对应的是后台的哪个接口,迫切需要使用一个抓包工具one by one

Charles  Free  简单上手快,首选

下载:https://www.charlesproxy.com/

或者使用我的网盘分享:https://pan.baidu.com/s/1J4ZgtuTB5qDTEG4jCh0dJA  (10aa)

原理:PC端安装Charles服务器,手机通过代理至PC(IP)端,连接至Charles服务器,通过其发包收包

http抓包:

  1. 把电脑设置为代理,打开默认是开启状态,在Proxy Settings 查看代理的端口是 8888

抓包工具Charles使用-LMLPHP

抓包工具Charles使用-LMLPHP

  2. 确保手机和电脑是在一个局域网内,获取电脑ip, ifconfig 如 192.168.19.10

打开手机wifi设置代理,在已连接的wifi右侧点击 > 进入网络详情页;如图,代理设置手动,然后输入电脑ip, 端口8888 ,点击确定,这时再访问app时, charles会弹出是否允许连接,点击确认即可。。。。。

抓包工具Charles使用-LMLPHP

一般情况下,测试环境http请求已经够用了,但是线上环境的抓包对于问题排查也是必不可少的

https抓包 ( 同上,新增APP安装CA证书 ):

1. 点击help然后如图操作,获取手机端下载地址

  抓包工具Charles使用-LMLPHP

2.在手机端浏览器输入对应地址chls.pro/ssl点击执行安装即可。

PS: 小米手机貌似不能通过这种方式下载证书,解决方案,在 Help --> SSL Proxying --> 选择Save Charles Root Certificate... 将证书保存在本地,然后再发送到手机上安装即可;

  或者安装QQ浏览器在输入网址下载。

正常使用是,Free版每过30s 会自动退出,需要重启,解决方案:

找到安装目录下 Java 文件夹,

替换:charles.jar 文件

下载:https://pan.baidu.com/s/1J4ZgtuTB5qDTEG4jCh0dJA  (10aa)

----------------- 分割线 -----------------

增加注意点:

1. charles需要和手机需要连接同一个路由器;

2. 如果没有连接同一个路由器,可以PC下载一个共享WiFi(如360共享WiFihttps://wifi.360.cn/easy/pc/),手机连接共享WiFi;

3. 打开PC端charles,使用代理;

当然抓包工具还有fiddler,以及app端的抓包工具,选择自己顺手的即可,欢迎补充。

05-17 14:03