什么是二进制数据转移到一个HTTP REST API服务的好办法?(What is a good w

2019-07-20 13:52发布

我们正在扩大我们的HTTP REST API,它允许客户上传照片(此问题的目的,假定二进制数据)。 到目前为止,我们只简单地允许在我们的API参数字符串。 什么是一个好办法,允许他们上载的二进制数据? 难道是请求Base64编码格式? 请问URL变得太长的Web服务器来处理?

任何建议/最佳做法?

Answer 1:

只需发送二进制数据,是在后的身体,但用适当的Content-Type头(例如,图像/ JPEG) - 我觉得这是最“REST风格”的方式。

(在一般情况下,设计REST服务时,一个经验法则,你越用HTTP协议的,是不是试图覆盖在喜欢的base64它上面的一些不必要的和复杂的,就更好了。HTTP是最终的RESTful协议工作和内容类型允许在“具象状态传输”不同“三个代表”)

另一种可能性要记住在接受图像的URL,而不是实际的物理文件。 这使得它很难为如读图像关闭用户的驱动独立的应用程序,但更容易混搭式应用程序,其中图像可返回为其他服务的URL。

您可以允许,当然这两个选项。



文章来源: What is a good way to transfer binary data to a HTTP REST API service?
标签: http api rest