1

公开可以接受 base64 编码图像的基于 REST 的 Web 服务的一般方法是什么。我还不确定图像是 anInputStream还是ByteArray. 我正在使用 RESTEasy。我可以将其映射为@FormParam( javax.ws.rs.FormParam) 吗?传入图像的通常数据类型是什么?

4

1 回答 1

1

首先,您希望接收图像,InputStream因为它们可能非常大。(我有一台数码相机,可以产生 12 兆像素的图像。它不是最新型号。即使以 JPEG 格式存储,它产生的图像也有好几兆字节。你不想让这种数据弄乱内存超过必要的。)

其次,您可以让您的网络服务接受原始未编码数据作为上传。它实际上比采用 base-64 编码数据更容易(前提是您将其作为流提取),并且可以很好地节省系统带宽和处理。如果您想同时发送其他数据,您应该考虑处理多部分内容。(唉,我没有这部分的经验;我一直在研究的 RESTful Web 服务不需要它。)

第三,图像应该被描述为image/*空间中的一种内容类型,但在实践中仔细检查,看看这是否是你真正得到的。将它们送回给客户时,您必须将其作为一image/*组送回。

于 2011-04-03T07:38:27.170 回答