什么是通过HTTP POST编码二进制数据的最有效方法

时间:2011-12-22 22:15:53

标签: json http post protocol-buffers thrift

我正在开发一个项目,我将通过HTTP POST将大量二进制数据(一个消息中的多个图像)发送到RESTful接口。

我已经研究了JSON,protobuff,thrift等替代方案,但没有找到这些格式引入的开销的确凿比较。在这种情况下,您更喜欢使用哪一个?

1 个答案:

答案 0 :(得分:1)

如果你真的需要将这一切都作为单个HTTP POST的一部分,那么我首先会更关注可靠性和功能性。效率都与您发送的内容相关。如果它是已经压缩的格式/容器中的图像,那么很可能在不牺牲其他内容的情况下,您不会在效率上看到很好的百分比差异。因此,在我看来,最有效的方法可能是在POST中使用内容的MIME编码,这意味着使用Base64编码二进制文件。使用此功能,您可以获得以下几乎任何开发平台都可以内置此功能,或者可以在外部库中轻松使用MIME / Base64。坚持使用这些高度使用的标准可以轻松支持广泛的用户群。一些链接供参考:

http://en.wikipedia.org/wiki/MIME

http://en.wikipedia.org/wiki/Base64

相关问题