社区首页 >问答首页 >如何同时刷新HTTPServeletResponse中的两个文件

如何同时刷新HTTPServeletResponse中的两个文件
EN

Stack Overflow用户
提问于 2019-11-12 14:36:36
回答 1查看 29关注 0票数 0

我处于这样一种情况:在调用API时,我想下载一个excel文件和一个zip文件。我已经破解了单独下载它们的代码,但当它们放在一起时,只有一个文件会被下载,而另一个文件就不会被下载。我猜测问题是我不能同时使用response.getOutPutStream().flush()response.flushBuffer()

代码语言:javascript
代码运行次数:0
复制
String absolutePath = context.getRealPath("resources/ZipFolders");
String inputFile = Paths.get(absolutePath + "/Attachments.zip").toAbsolutePath().toString();
File finalFile = new File(inputFile);
ZipOutputStream zipOut = new ZipOutputStream(new FileOutputStream(finalFile));

String absolutePath2 = context.getRealPath("resources/Spreadsheets");
String inputFile2 = Paths.get(absolutePath2 + "/Validation_Spreadsheet.xlsx").toAbsolutePath().toString();
File file = new File(inputFile2);
byte[] bytes = IOUtils.toByteArray(new FileInputStream(file));
ZipEntry zipEntry = new ZipEntry("Validation_Spreadsheet.xlsx");
zipOut.putNextEntry(zipEntry);
zipOut.write(bytes);
zipOut.closeEntry();
zipOut.close();
response.setContentType("application/zip");
response.setHeader("Content-disposition", "attachment;filename=attachment_trial.zip");
response.getOutputStream().write(IOUtils.toByteArray(new FileInputStream(finalFile)));
System.err.println("above flush>>>>>>>>>>>>>>");
response.getOutputStream().flush();

responsetrial.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
responsetrial.setHeader("Content-disposition", "attachment; filename=TransactionErrors.xlsx");
responsetrial.getOutputStream().write(IOUtils.toByteArray(new FileInputStream(file)));
System.err.println("above flush2>>>>>>>>>>>>>>");
responsetrial.getOutputStream().flush();
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-11-12 15:04:51

不可能在一个HTTP请求中下载两个文件。您需要为此任务单独提出2个请求。

如果你需要在一个单独的"HTML按钮“中下载多个文件,你需要写一些javascript逻辑来实现这一点。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58820835

复制
相关文章
eclipse打开文件所在目录
设置 添加扩展工具,添加步骤如下: Run-->External Tools-->External Tools Configurations... new 一个 program location 里面
磊哥
2018/05/08
1.6K0
eclipse打开文件所在目录
怎么使用eclipse打开本地已有的Java项目
在开始使用Eclipse的时候,会发现一个问题,那就是如何打开一个现有的Eclipse工程,开始在菜单中找了好久也没找到。 其实,Eclipse生成的结果不像VC,Jcreator那样可以直接打开,若要打开非workspace文件夹下的其他已有项目,可以打开菜单file->import->general->existing project into space(也可以导入文件系统File System).在select root directory中选中要打开的文件夹即可。此时如果选择copy existing project into workspace就会同时将文件拷贝到workspace下。这里首先要保证要保证Eclipse两个文件.classpath和.project还在,不然无法导入,就是说Eclipse的import只认自己家的东西。 如果要打开的工程与Eclipse的配置不同,在运行时会产生问题。解决方法是: 打开菜单project->properties修改。主要需要修改的是java build path项。
JavaEdge
2022/11/29
2.5K0
【说站】如何打开php项目
在xampp\htdocs目录下,如果存在index.php文件,则优先执行该文件,如果不存在,则访问localhost显示站点目录。
很酷的站长
2022/11/23
1.3K0
【说站】如何打开php项目
PHP安装Eclipse与使用
PHP有非常多相当不错的开发工具,如Zend Studio、NetBeans、phpdesigner等,但对于习惯Java编程的程序员们来说,最经常使用的还要属Eclipse。
全栈程序员站长
2022/09/06
9320
PHP安装Eclipse与使用
phpspreadsheet中文手册_php打开文件
PhpSpreadsheet要求PHP 7.3及以上版本,是PHPExcel库的扩展版本,可用来读写xls、xlsx、CSV、HTML等格式文件。
全栈程序员站长
2022/09/30
5.7K0
php文件用什么软件打开
在php开发过程中,我们需要打开和编辑各种类型的php文件。不同的编程工具和编辑器可以帮助开发人员更高效地完成工作。在这篇文章中,我们将介绍一些常用的php编程工具和编辑器,包括VSCode、PHPStorm和其他一些选项。
ianzhi
2023/10/19
3050
Eclipse使用教程_eclipse怎么运行整个项目
PS:最近很多同学问我eclipse不知道怎么用,那我们出一个eclipse的教程
全栈程序员站长
2022/09/20
4.8K0
Eclipse使用教程_eclipse怎么运行整个项目
Eclipse保存文件时出现字符编码错误
eclipse 由于开源所以支持了比较杂的编码方式,而这些一个工程导入时添加了不少的外来程序,由于不是同一工程一次编码带来了其中含有 GBK 或 UTF8 或 UTF16 或 ASCII 等文件编译时就会出现错误警告。
黑泽君
2018/10/11
3.4K0
使用Githubdesktop管理Eclipse项目
方案 使用Eclipse创建项目,使用githubdesktop进行管理 项目右键, Team -> Share Project 选择Git, 随后配置GIT,Configure Git Reposi
演化计算与人工智能
2020/08/14
5040
使用Githubdesktop管理Eclipse项目
迅雷php文件怎么打开_php生成短链接
< a href =“#Whattoaddhere”style =“color:blue;”>返回TOC< / a>
全栈程序员站长
2022/10/04
3.5K0
vim打开文件时提示E325[通俗易懂]
它的意思是说在这个目录下有一个隐藏文件,这个隐藏文件是未保存版本的这个文件,要解决这个很简单,直接删除这个隐藏文件就行。 我们先看一下这个目录下的所有文件:
全栈程序员站长
2022/08/29
8530
vim打开文件时提示E325[通俗易懂]
office xls 文件已损坏 无法打开 word在试图打开文件时遇到错误
转自:http://windyli.blog.51cto.com/1300305/326491
全栈程序员站长
2022/09/01
2.5K0
使用eclipse创建maven web项目
本文介绍了如何使用Eclipse创建Maven Web项目,包括项目结构、依赖管理、构建以及部署。同时针对Index.jsp报错的问题,进行了详细的解决步骤。
用户1141560
2017/12/26
1.2K0
使用eclipse创建maven web项目
PHP如何使用Composer来自动加载项目文件?
Composer是PHP的依赖管理工具。它允许您声明您的项目所依赖的库, 并且它将为您管理 (安装/更新) 它们。它以每个项目为基础管理它们, 并将它们安装在项目内的目录 (如 vendor) 中. 默认情况下, 它不会在全局范围内安装任何内容。因此, 它是一个依赖关系管理器。
房东的狗丶
2023/02/17
3.4K0
【说站】php文件用什么软件打开
这是PHP最传统、最主要的目标领域。PHP解析器、网络服务器和网络浏览器需要以下三点。PHP代码在服务器上运行,结果以纯HTML形式返回浏览器。
很酷的站长
2022/11/23
2.6K0
【说站】php文件用什么软件打开
eclipse 创建java文件_如何使用eclipse创建一个java文件
方式二:鼠标在代码编辑区右键,然后选中:run As –> java application
全栈程序员站长
2022/09/09
3K0
需要打开文件夹时,双击文件夹文件夹没有打开怎么办?
1、点击[此电脑] 2、点击[查看] 3、点击[选项] 4、点击[通过单击打开项目(指定时选定)] 5、点击[确定]
裴来凡
2022/05/28
3.2K0
需要打开文件夹时,双击文件夹文件夹没有打开怎么办?
点击加载更多

相似问题

如何使用脚本解除环境变量?

10

如何使用setenv设置环境变量?

20

如何更有效地使用find命令?

10

如何设置环境变量?

60

如何设置永久环境变量?

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文