转自:
如何在Spring Boot中如何返回InputStream时采用文件的模式呢?
下文笔者讲述SpringBoot返回InputStream时,采用文件模式返回的方法分享,如下所示
实现思路:
返回时,加入参数HttpServletResponse即可
注意事项:
这种方式,就可以返回任意类型格式的数据至客户端
pdf,excel,json,html等等
例:
public static void sendFileInResponse (HttpServletResponse response, InputStream inputStream) throws IOException { response.setContentType("your_content_type"); response.setHeader("Content-Disposition", "inline;filename=your_file_name"); OutputStream outputStream = response.getOutputStream(); byte[] buff = new byte[2048]; int length = 0; while ((length = inputStream.read(buff)) > 0) { outputStream.write(buff, 0, length); outputStream.flush(); } outputStream.close(); inputStream.close(); response.setHeader("Cache-Control", "private"); response.setDateHeader("Expires", 0); }