通过休息Api接收图像文件

时间:2016-06-28 20:08:14

标签: java rest multipartform-data jersey-2.0 form-data

如何通过Rest API接收图像文件。有一个MULTIPART_FORM_DATA选项,它看起来像在多个请求中一样发送文件。 我想在服务器上非常快速地接收图像。每秒约2幅图像。

1 个答案:

答案 0 :(得分:1)

只需阅读File中的图片,然后使用Response类来构建回复。

Response.ok(new File("myimage.jpg"), "image/jpeg").build();

还有其他变体。

使用以下方法阅读图像。

URL url = new URL("http://localhost:8080/myimage/1");
URLConnection connection = url.openConnection();

input = connection.getInputStream();
byte[] buffer = new byte[1024];
int n = - 1;

OutputStream fos = new FileOutputStream("Output.jpg" );
while ( (n = input.read(buffer)) != -1) 
{
    fos.write(buffer, 0, n);
}
fos.close();

您可以使用Apache HTTP客户端使其更漂亮。