相关疑难解决方法(0)

protobuf版本之间的数据格式兼容性

我想知道协议缓冲区的序列化数据格式是否在protobuf编译器和客户端库版本中保持不变.

换句话说,我是否需要使用相同的编译器版本来生成我的Python,Java和C++类?这些客户都需要使用相同版本的protobuf库吗?

这篇文章解决了我的问题,但其接受的答案特定于OP的protobuf版本.

serialization protocol-buffers

6
推荐指数
1
解决办法
2207
查看次数

Protobuf 向后兼容性以及 proto3 与 proto2

Protobuf 的卖点之一是向后兼容性,即开发人员可以改进格式,而老客户端仍然可以使用它。

options现在,有了名为 proto3 的新 Protobuf 版本,IDL 语言本身不兼容,例如required删除了 enun 的新语法、无扩展等。

这是否意味着使用 proto3 无法生成较旧的 proto2 也可以读取/理解的二进制文件?

就好像你必须继续使用proto2。如果你开始使用 proto3,你就无法与旧系统对话,或者必须重写、重新编译所有这些,.proto这首先就是兼容性问题。

compatibility backwards-compatibility protocol-buffers proto3

5
推荐指数
1
解决办法
1万
查看次数