Java I';我试图从springboot控制器下载一个zip文件,但我';我得到了很好的回应。请协助

Java I';我试图从springboot控制器下载一个zip文件,但我';我得到了很好的回应。请协助,java,Java,这是我的代码和代码下面的响应 @GetMapping(value=“/download/tutorial/{tutorialId}”,products=“application/zip”) public void zipDownload(@PathVariable String tutorialId,HttpServletResponse)引发IOException{ ZipOutputStream zipOut=新的ZipOutputStream(response.getOutputStrea

这是我的代码和代码下面的响应

@GetMapping(value=“/download/tutorial/{tutorialId}”,products=“application/zip”)
public void zipDownload(@PathVariable String tutorialId,HttpServletResponse)引发IOException{
ZipOutputStream zipOut=新的ZipOutputStream(response.getOutputStream());
List downloads=tutorialFileService.downloadFiles(compos.getLong(tutorialId));
用于(教程文件下载f:下载){
FileSystemResource=newfilesystemresource(dropBoxService.downloadFile(f.getFilename(),f.getPathLower());
ZipEntry-ZipEntry=新的ZipEntry(resource.getFilename());
setSize(resource.contentLength());
zipOut.putNextEntry(Zippentry);
copy(resource.getInputStream(),zipOut);
zipOut.closeEntry();
}
拉链。完成();
zipOut.close();
//response.setStatus(HttpServletResponse.SC_OK);
addHeader(HttpHeaders.CONTENT_处置,“附件;文件名=test.zip”);
}
这就是答案


我不喜欢访问到其他地方的随机链接-你不能在这里发布回复吗?问题是什么?你还期望得到什么样的回应?为什么?如何设置和显示该响应?注意:在编写正文之前必须添加标题。这是否回答了您的问题@JBNizet的评论是问题的关键——在编写内容之前需要添加附件标题(内容处置)。头在响应中首先出现,并在写入
OutputStream
后立即刷新。在这一点之后添加标题实际上没有任何作用。我不喜欢访问其他地方的随机链接-你不能在这里发布响应吗?问题是什么?你还期望得到什么样的回应?为什么?如何设置和显示该响应?注意:在编写正文之前必须添加标题。这是否回答了您的问题@JBNizet的评论是问题的关键——在编写内容之前需要添加附件标题(内容处置)。头在响应中首先出现,并在写入
OutputStream
后立即刷新。在这一点之后添加标题实际上没有任何作用。