我不建议在base64中编码二进制数据并将其包装在JSON中。它只会不必要地增加响应的大小并使速度变慢。
只需使用GET并
application/octect-stream使用的工厂方法之一即可提供文件数据
javax.ws.rs.core.Response(JAX-
RS API的一部分,因此您不会被锁定到Jersey):
@GET@Produces(MediaType.APPLICATION_OCTET_STREAM)public Response getFile() { File file = ... // Initialize this to the File path you want to serve. return Response.ok(file, MediaType.APPLICATION_OCTET_STREAM) .header("Content-Disposition", "attachment; filename="" + file.getName() + """ ) //optional .build();}
如果您没有实际的
File对象,但是
InputStream,也
Response.ok(entity,mediaType)应该能够处理该对象。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)