如何使用dropwizard作为excel文件返回响应?
我正在使用dropwizard进行我的rest api开发,它将返回json响应。 我现在遇到了一个要求,我必须返回一个特定API的调用的Excel文件。 我发现apache poi是很好用的库。 但是,我如何返回Excel文件作为响应。 浏览器应该显示一个选项来下载。
将Content-Type设置为application/octet-stream
并添加一个Content-Disposition
响应头。 像Content-Disposition: attachment; filename="file.xsl"
Content-Disposition: attachment; filename="file.xsl"
。 例如
@Path("/file") public class FileResource { @GET @Produces(MediaType.APPLICATION_OCTET_STREAM) public Response getFile() throws Exception { InputStream is = new FileInputStream("file.txt"); return Response.ok(is) .header(HttpHeaders.CONTENT_DISPOSITION, "attachment; filename=\"file.txt\"") .build(); } }
除了InputStream
,你可以返回File
,一个byte[]
,一个StreamingOutput
,你有选项。