charles使用
charles 工具介绍
charles其实是一款代理服务器,通过成为电脑或者浏览器的代理,然后截取请求和请求结果达到分析抓包的目的。该软件是用Java写的,能够在Windows,Mac,Linux上使用,安装Charles的时候要先装好Java环境。
Charles是在 常用的网络封包截取工具,在做移动开发时,我们为了调试与服务器端的网络通讯协议,常常需要截取网络封包来分析。Charles 通过将自己设置成系统的网络访问代理服务器,使得所有的网络访问请求都通过它来完成,从而实现了网络封包的截取和分析。除了在做移动开发中调试端口外,Charles 也可以用于分析第三方应用的通讯协议。配合 Charles 的 SSL 功能,Charles 还可以分析 HTTP协议
Charles 是收费软件,可以免费试用 30 天。试用期过后,未付费的用户仍然可以继续使用,但是每次使用时间不能超过 30 分钟,并且启动时将会有 10 秒种的延时。因此,该付费方案对广大用户还是相当友好的,即使你长期不付费,也能使用完整的软件功能。只是当你需要长时间进行封包调试时,会因为 Charles强制关闭而遇到影响。(可以自行网上查找破解版软件)
charles的工作原理
截获真实客户端的HTTPS请求,伪装客户端向真实服务端发送HTTPS请求。
接受真实服务器响应,用Charles自己的证书伪装服务端向真实客户端发送数据内容。
proxy菜单
抓取web端包
移动端抓包
代理设置
1、查看电脑IP地址
2、Charles代理设置:Proxy->Proxy Settings,设置一下端口号,默认的是8888,这个只要不和其他程序的冲突即可,并且勾选Enable transparent HTTP proxying。
3、在手机设备、模拟器或者远程浏览器上设置代理
第一步:在手机wifi 上设置代理 -> 长按无线网络–>修改网络–>高级选项–>代理 手动–>手动输入输
入IP、端口号
服务器IP:PC机器的IP(通过之前介绍的查看IP的方法)
端口号:8888(通过之前介绍的查看端口的方法)
第二步:Charles弹出询问“allow”或者“deny”,点击“allow”按钮允许;出现手机的HTTP请求列表
如何模拟慢速网络
压测服务器
依次点击tools—Repeat Advanced
选择好并发线程数和打压次数,点击ok就能进行对产品的GET和POST请求进行测试服务器并发处理的性能,当然这里只是简单的进行压测,并且只能对Charles抓到的http协议的请求进行重复并发,缺点就是如TCP类的抓不到的就不能了
charles模拟404
1、tools——>blacklist
2、允许启用黑名单功能,选择接口返回错误的形式(404 或者403),添加接口地址并保存
3、选中需要返回404/403的接口,点击【ok】