繁体   English   中英

Servlet:强制浏览器(Google Chrome)立即打开“另存为”对话框

[英]Servlet: Force Browser (Google Chrome) to Open 'Save As' Dialog Immediately

我有一个Servlet(Java EE),该Servlet将大的pdf文件返回到UI /浏览器(HTML和JavaScript)进行下载。 服务器需要10到20秒钟的时间来生成文件,因此我试图尽快弹出“另存为”对话框,以避免浏览器滞后,用户混乱,等待等。

我只想发送标头等来建立连接,当服务器完成工作时,我们将刷新其余的有效负载。

我在标头和刷新缓冲区之后立即发送。 这在firefox中效果很好,浏览器显示对话框,从而消除了浏览器的等待,并产生了下载已经开始的错觉,这不适用于chrome。

任何帮助表示赞赏。

我通过设置content-disposition标头(非Java语法)修复了该问题

header("Content-Type: application/force-download");
header("Content-Type: application/octet-stream");
header("Content-Type: application/download");

response.setContentType("application/octet-stream");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM