【问题标题】:JSP download file with ajax使用ajax的JSP下载文件
【发布时间】:2013-07-29 10:34:13
【问题描述】:

要下载文件,我正在使用 ajax。我有三种状态:

"Download file" - before you click on the link.
"File is downloading..." - while the file is downloading
"Download file" - if the file was generated successful 
"Error while downloading file" - if there was any error while download the file.

我正在使用 JSP,jquery ajax。如何判断使用ajax下载文件出错或下载成功。

【问题讨论】:

  • 下载文件到底如何?贴出你的代码!
  • 浏览器还是那样做,为什么要第二次实现呢?
  • 只需调用一个 servlet 将文件写入响应中

标签: jquery ajax jsp download


【解决方案1】:

您无法使用 ajax 下载文件并使其有用。 Ajax 响应被加载到 javascript 内存中。 Javascript 没有磁盘访问权限来保存该文件。

所以最好使用标头“content-type” Content-Disposition: attachment; filename="file name.ext" 使用普通请求。

这将下载文件,浏览器将为用户提供保存文件的选项。另请注意,这不会重新加载您的页面。

【讨论】:

  • ajax 调用一个带有参数的 url,该参数是 servlet,它生成文档并将其写入响应中。这里的问题是 ajax 将响应作为消息接收。
  • Javascript 会接收 $​​ajax.response 中的文件数据,但它不能用它做很多事情。
  • 我是用 iframe 做的,但在这种情况下,我有两个对服务器的请求。
猜你喜欢
  • 1970-01-01
  • 2016-12-28
  • 1970-01-01
  • 2015-09-11
  • 1970-01-01
  • 2015-06-01
  • 2012-06-25
  • 2014-12-28
  • 1970-01-01
相关资源
最近更新 更多