关于charles的使用方法
实习ing,因项目需要在正式包中查看测试页面便学习使用了charles,这也是我第一次写博客,主要也是为了自己能够记住这些使用方法,当然如果对你有帮助就更好了。
首先Charles的强大功能就不需要我多说了,抓包、模拟慢速网络、修改请求参数等等,更多功能再慢慢摸索吧。
重中之重:使用charles抓取请求时,手机与电脑必须处于同一个WIFI下。
Charles官网https://www.charlesproxy.com/,下载Charles安装包,然后一键安装。
免费试用30天,不过我们可以下载破解版。
下载完成后,页面如下:
勾选Proxy-WindowsProxy后即可抓取到了电脑本地发送的请求,如果之后不需要可以取消。
当前请求栏有很多锁的标志,这时需要配置ssl代理的权限。
按步骤勾选允许ssl代理,host填*(代表所有),port填443表示端口为443的请求,之后即可正常抓取网络了。
若要抓取手机上app的请求,首先查看charls端口,默认为8888,需要勾选允许http代理
再查看电脑ip,也可以通过ipconfig查询
配证书,一定要配,好多人抓包失败就是因为证书
完成后,给自己的手机配证书,同样很重要,这里以ios为例。
ios输入网址下载安装证书后,还需要去关于本机里找一个证书信任设置,这个当时把我卡住了,因为我找的教程是安卓手机,直接就告诉我证书的下载地址,没有上面两张图的操作,当然如果我第一次就看到证书信任设置这个事会顺利很多。
最后需要在手机上点开自己WIFI配置代理,这里的服务器就是电脑的ip,端口号就是默认的8888,如果有需要也可以修改
如果使用charles抓手机app上的接口返回的结果出现unknown,也是证书的问题。
连接成功后会弹一个提示框,deny表示拒绝,allow表示允许,这个图我忘记截了。
连接成功后就可以正常获取手机上的请求了。
如果未能成功可能原因有:
WIFI问题(手机和电脑必须必须处于同一WIFI下)
证书问题(一定要配证书,手机和电脑都需要,iOS不要忘记证书信任设置)
防火墙问题(我看有的人是会因为防火墙打开而连接不成功的)
基本上是这些,如果都未能见效可以尝试改变端口号试一试呢。