我可以将JSON对象中的协议缓冲区作为String类型发送吗?

时间:2016-07-26 13:51:00

标签: json protocol-buffers

我一直在看这个,我想把协议缓冲区的二进制数据用JSON包装在一个字符串中。

我使用什么格式?我知道很多事情我一直在阅读提及base64。但是

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

特定语言对我来说并不重要。

1 个答案:

答案 0 :(得分:1)

您应该能够像使用任何其他二进制数据一样在JSON中包装序列化协议缓冲区; base64可能是显而易见的编码,因为JSON本身无法处理任意二进制数据。

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