w405722907
马大头
采纳率59.1%
2017-08-18 08:33 阅读 6.4k

Java下载文件时如何给前台返回一个值?

前台是用html写的不是jsp, 用poi生成excel直接通过流写回浏览器来下载
想到使用ajax,但是ajax是不支持文件下载的,但是用其他的方法如何在下载文件的代码
执行完毕以后给前台返回一个状态码来通知下载完成?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

7条回答 默认 最新

  • u011313384 我是你一一哥 2017-08-18 10:05

    ajaxfileupload.js,这东西你看满足你的吗

    点赞 1 评论 复制链接分享
  • HPP19 HPP19 2017-08-18 15:12

    浏览器上在下载选项里能看到下载成功的。
    或者在后台下载的方法里头抛个异常,下载成功的话向页面传个参数,在页面中对这个参数进行判断,给出下载成功还是失败。
    也可以用window.open();在点击下载的时候,触发一个事件,打开一个子/新窗口,进行下载,window.parent.opener.docment.getElementById(),用这个方法向父窗口传递一个参数,在父窗口中设置id接收传回来的参数进行判断,给出失败还是成功。

    点赞 1 评论 复制链接分享
  • qq_30408111 二三三 2017-08-18 09:10

    直接下载的话,前台浏览器不是会出现下载界面的

    点赞 评论 复制链接分享
  • qq_33727653 砸死接触 2017-08-18 11:03

    用window.open() 或 window.location.href()不能实现吗? 感觉可以的呀 ,点击下载 就一如一个js方法 方法里就用这俩的其中一个,感觉可以的说。。。。但是应该不会返回其他值了!!!

    点赞 评论 复制链接分享
  • HPP19 HPP19 2017-08-25 10:27

    后台是用JAVA写的话,设置一个标识符,result = 1; try 抛出一个异常,在异常里将result的值改为0;在异常外面将result响应到页面。
    在页面 利用ajax接受这个result(就是在你向页面提交请求时有个回调函数),对result的值进行判断,再alert出响应的结果。

    点赞 评论 复制链接分享
  • LIU_KuLaLaLa 酷啦啦啦 2017-11-28 07:08
    点赞 评论 复制链接分享
  • shenzhuang_0807 shenzhuang_0807 2019-10-22 16:52

    你说的需求目前实现不了 别问了 我看其他人回答的特傻逼 尤其这个HPP19 都告诉他不能用ajax下载文件了 他他妈的还在说用ajax接口后台响应结果 服了

    点赞 评论 复制链接分享

相关推荐