协议缓冲区可以用于实现第三方协议

时间:2012-05-14 05:40:09

标签: serialization protocol-buffers

当只有通信通道的一端使用谷歌协议缓冲区时,是否可以使用谷歌协议缓冲区作为序列化机制?

即给定客户端需要与某些第三方服务器或以某种已定义的消息字节结构进行通信的硬件进行通信。

是否可以使用protobuf IDL指定预期的确切字节结构?或者protobuf是否使用它自己的字节打包格式,因此两端必须使用protobuf协议说话?

如果没有protobuf有一些库可以实现这个目标吗?

1 个答案:

答案 0 :(得分:0)

没有。协议缓冲区具有非常严格的布局,无法更改,并且不太可能与您正在使用的匹配,除非它秘密使用协议缓冲区而不是宣传该事实。编码为documented here

至于替代品;这在很大程度上取决于您使用的平台/语言/框架。发现你必须编写自己的工具来讨论所需的协议并不罕见。