我一直在看这个,我想把协议缓冲区的二进制数据用JSON包装在一个字符串中。
我使用什么格式?我知道很多事情我一直在阅读提及base64。但是
我在C#中想要的对象的服务器端有一个字节流。 我的客户端是一个Android设备...... Java。
特定语言对我来说并不重要。
答案 0 :(得分:1)
您应该能够像使用任何其他二进制数据一样在JSON中包装序列化协议缓冲区; base64可能是显而易见的编码,因为JSON本身无法处理任意二进制数据。
另一方面,你不一定要使用JSON;你可以考虑直接通过线路传递序列化协议缓冲区。另一种方法是使用RPC框架gRPC,它本身使用协议缓冲区,并为您处理所有编码和解码。