下载请求发送成功,无下载提示,下载失败

Posted gonelw

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了下载请求发送成功,无下载提示,下载失败相关的知识,希望对你有一定的参考价值。

  最近处理了Excel导出操作是碰到的问题,Excel处理插件用的是POI。

  前端通过Ajax请求,发送导出操作之后,在后台进行进行Debug跟进,都没有问题,但是就是不会弹出下载提示框。

  服务器返回了response之后,客户端这边没有任何反应。

  部分下载代码如下:

if(workbook !=null){
                try
                {
                    String fileName = "Userlog_" + String.valueOf(System.currentTimeMillis()).substring(4, 13) + ".xls";
                    String headStr = "attachment; filename=\"" + fileName + "\"";
                    response.setContentType("APPLICATION/OCTET-STREAM");
                    response.setHeader("Content-Disposition", headStr);
                    OutputStream out = response.getOutputStream();
                    workbook.write(out);
                }
                catch (IOException e)
                {
                    e.printStackTrace();
                }
}

 

  参考了网上的说法,ajax请求的返回值类型为:json、html、text、xml。对于流这种类型,ajax请求无法识别,所以客户端也一直没有反应。

  是否可以在ajax请求的回调函数success或者error中处理这个response,还是response到达客户端的时候,ajax无法识别,导致回调函数无法触发。

  后面改用window.location.href="";这种请求可以解决这个问题。类似的还有window.open;window.url等。

  记之。

  

以上是关于下载请求发送成功,无下载提示,下载失败的主要内容,如果未能解决你的问题,请参考以下文章

百度网盘svip下载时显示下载请求中无下载速度

Gtksharp编译时提示下载gtk文件问题

电脑一直安装不上Java,老提示下载失败

Ajax方式实现文件下载失败

shell 实现监控Web服务状态

ajax请求过程中下载文件在火狐下的兼容问题