protobuf抓包
有时候会遇到使用protobuf
协议的http请求, 而protobuf
封包后的二进制几乎不可读, 如何调试呢
protobuf就是类似一个json的数据传输协议, 相比json更快, 体积更小; 缺点就是不可读
Content-Type: application/x-protobuf
数据大概是下面这样的(浏览器开发者工具 自动通过utf-8转换为了字符串, 使某些数据可读了一些, 原本应该是一个二进制数据)
载荷
响应
主要就是 跟栈 找到封包之前的对象, 大概一直跟到这里
断点到这里打印数据
添加日志点, 记录参数信息;
额外添加一个base64, 因为转换后的二进制数据并不方便存储转移
转base64的方法 这里是通过油猴脚本挂载到window
对象上的(油猴脚本中的JS可以在DOM加载之前执行)
解包类似, 找到decode方法, 添加日志点
效果如下, 这样就可以清晰读取每次protobuf协议的参数及返回信息