2016-07-26 38 views
0

我一直在看这个,我想用JSON将协议缓冲区的二进制数据包装成一个字符串。我可以作为字符串类型在JSON对象中发送协议缓冲区吗?

我可以使用什么格式?我知道很多我一直在读的东西,提到base64。但是

我在C#中想要的对象的服务器端有一个字节流。 我的客户端是一个Android设备... Java。

语言特定并不重要,但我。

回答

1

你应该能够以JSON包装序列化的协议缓冲区,就像使用任何其他二进制数据一样;由于JSON本身无法处理任意二进制数据,因此base64可能是明显使用的编码。

另一方面,你不一定非要使用JSON;您可以考虑直接将串行化协议缓冲区通过线路。另一种方法是使用RPC框架gRPC,该框架本身使用协议缓冲区,并将为您处理所有的编码和解码。