ProtoBuf简介
- Protocol buffers是一种语言无关、平台无关、可扩展的序列化结构数据的方法,它可用于(数据)通信协议、数据存储等。
数据交互xml、json、protobuf格式比较
- json: 一般的web项目中,最流行的主要还是json。因为浏览器对于json数据支持非常好,有很多内建的函数支持。
- xml: 在webservice中应用最为广泛,但是相比于json,它的数据更加冗余,因为需要成对的闭合标签。json使用了键值对的方式,不仅压缩了一定的数据空间,同时也具有可读性。
- protobuf : 是后起之秀,是谷歌开源的一种数据格式,适合高性能,对响应速度有要求的数据传输场景。因为profobuf是二进制数据格式,需要编码和解码。数据本身不具有可读性。因此只能反序列化之后得到真正可读的数据。相对于其它protobuf更具有优势
1:序列化后体积相比Json和XML很小,适合网络传输
2:支持跨平台多语言
3:消息格式升级和兼容性还不错
4:序列化反序列化速度很快,快于Json的处理速速
ProtoBuf 的不足
- Protobuf 与 XML 相比也有不足之处。它功能简单,无法用来表示复杂的概念。
Charles如何查看pb接口
- 使用Home Brew安装Protobuf:brew install protobuf
- 查看是否安装成功:protoc –version
- 生成描述文件:
#带文件路径生成描述文件
protoc -I=/Users/mac_bigsur/Downloads --descriptor_set_out=/Users/mac_bigsur/Downfloads/ht_user_profile_visitor.desc /Users/mac_bigsur/Downloads/ht_user_profile_visitor.proto
#生成描述文件
protoc -oht_user_profile_visitor.desc ht_user_profile_visitor.proto
- 查看pb接口(如果选上方view,只对改请求生效)
问题记录
- 导入描述文件报错,好像可能没有影响
- 离谱的问题
- 这里的选择竟然是可以下滑的,怎么能没有下滑的图标呢
- 害得我一直以为导入描述文件失败,其实是成功的
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/289016.html