使用Angular2和Spring MVC的文件下载框

时间:2017-06-05 18:10:32

标签: angular spring-mvc

我们有一个应用程序支持在搜索结果中导出excel。 搜索结果被分页并延迟加载。但是在导出时,用户希望导出所有页面。

导出在我们获取所有数据的服务器上处理,并创建一个xlsx文件,该文件显示为文件下载。导出需要一点时间(大约一分钟),此时我有两个选项:

  1. 向用户显示一个玻璃面板,阻止他做任何其他事情
  2. 不显示玻璃面板,让用户在下载过程中继续使用该应用程序
  3. 我试图实施#2。下载有效,但是没有给用户提供下载正在进行的视觉指示。我想在下载过程中显示浏览器窗口底部显示的浏览器下载文件对话框,但无法显示。

    我正在使用Filesaver.js:

    FileSaver.saveAs(response, 'SheetName.xlsx')
    

    从服务器传递的相关http标头:

    content-disposition:attachment; filename="SheetName.xlsx"
    content-language:en-US
    expires:0
    pragma:private
    Transfer-Encoding:chunked
    

    我在服务器端使用带有Apache POI的Spring MVC来创建excel。 不确定如何继续。有什么建议吗?

0 个答案:

没有答案