我正在尝试通过隐藏的iframe元素下载文件。我还想检查错误代码返回时的响应,以便在文件准备失败时显示错误消息。以下代码就是我现在所拥有的。
var srcUrl = "/MyProject/servlet?action=getFile&output=STREAM&asAttachment=Y¶m1=userinput1¶m2=userinput2
$("#downloadFrame").load(
srcUrl,
function(response, status, xhr) {
if (xhr.status == 204) {
$("#errorDiv").html(xhr.statusText);
}
}
);
当响应返回错误代码时,它会显示预期的错误消息。但是,当文件准备好并正确返回时,它不会保存返回的字节流。此代码将下载该文件,但它也不会检查状态代码。
$("#downloadFrame").attr("srcUrl", params);
可能感兴趣的是,这是一个jsp页面向Tomcat 6.0上运行的java servlet发出请求。
答案 0 :(得分:0)
尝试为下载成功添加操作?
let srcUrl = "/MyProject/servlet?action=getFile&output=STREAM&asAttachment=Y¶m1=userinput1¶m2=userinput2
$("#downloadFrame").load(
srcUrl,
function(response, status, xhr) {
if (xhr.status == 204) {
$("#errorDiv").html(xhr.statusText);
}
if (xhr.status == 200 & xhr.readyState == 4) {
$("#successDiv").html(xhr.statusText); //xhr.(what you need to save)
}
}
);