poi生成后如何下载

img

前段访问一个接口,然后后台用poi生成一个Excel后提供下载功能,我这个做完后他没下载,谁能帮忙看看啥情况嘛😓

去掉response.getOutputStream().close();

该回答引用GPTᴼᴾᴱᴺᴬᴵ
如果您的代码中没有其他问题,您可以尝试在浏览器中手动点击生成的下载链接,看看是否可以成功下载Excel文件。如果可以,则可能是您的代码中缺少了某些必要的响应头信息,导致浏览器无法正确处理文件下载。

以下是您的代码中的一些注意事项:

  1. response.setHeader("Content-type", "application/vnd.ms-excel"); 用于设置响应头中的Content-type,指示下载的文件类型为Excel文件。确保您的代码正确设置了此响应头。

  2. response.setCharacterEncoding("UTF-8"); 用于设置响应的字符编码为UTF-8,确保您的代码正确设置了此响应头。

  3. response.setHeader("Content-Disposition", "attachment;filename=" + new String("测武模板".getBytes("UTF-8"), "ISO-8859-1") + ".xls"); 用于设置响应头中的Content-Disposition,指示浏览器将文件作为附件下载。确保您的代码正确设置了此响应头,并且文件名中的中文字符正确转换为ISO-8859-1编码。

  4. workbook.write(response.getOutputStream()); 用于将生成的Excel文件写入响应输出流中,确保您的代码正确将文件写入输出流。

如果您的代码中没有其他问题,您可以在调试过程中使用浏览器的开发者工具来检查响应头信息是否正确设置,以及输出流是否包含Excel文件的内容。

前端我不太懂啊,建议你先 postman 调一下接口,看看接口通不通,调接口的时候不要直接 send 选择一下 send and download