最近需要对接一个第三方的广告投放接口,感觉挺简单的是,但是当看到技术文档是有点懵,其中提供了一个ts_ui_api.proto文件为api接口文件,content-type 需要为“x-protobuf”,也没有样例。看到这里你可能和我一样protobuf是个什么东西,是的我就是带着这个问题去查阅了很多资料才明白protobuf是什么东西,需求搞定了就来写篇文章记录一下(本文主要为java使用),以防以后使用:
Protobuf是什么?
protobuf,全称:Google Protocol Buffer,是Google开源的一种轻便高效的结构化数据存储格式,可以用于结构化数据的串行化,也称作序列化,主要用于数据存储或是RPC数据交换,支持多语言(目前支持C++、JAVA、Python,go等),可拓展;
1.protobuf的优势
-
平台无关,语言无关,可扩展;
-
提供了友好的动态库,使用简单;
-
解析速度快,比对应的XML快约20-100倍;
-
序列化数据非常简洁、紧凑,与XML相比,其序列化之后的数据量约为1/3到1/10;
-
生成了更容易在编程中使用的数据访问类
2.protobuf使用
- 根据不同平台有相应的支持库java支持库: