我有以下代码:
jQuery.ajax({
type: "GET",
url: "http://localhost:8081/myservicethatcontainsazipfile",
contentType:'application/zip',
success: function (response) {
console.log("Successful");
},
error: function (xhr, ajaxOptions, thrownError) {
console.log("Error.");
}
});
根据AJAX规范,你不能直接将文件下载到计算机上(安全原因),所以我想知道如何直接从客户端下载这个文件,而无需创建并单击html元素并类似的选项?
最佳答案
您无法使用 AJAX 来做到这一点。但是,您可以重定向/打开一个新窗口,将用户带到文件页面,该页面将自动开始下载。
如果您不需要按钮,您可以使用这些 JavaScript 行之一。
window.open(download_url, '_blank')
window.location = 'download_url'
请记住,出于安全原因,您需要等待至少 3-5 秒才能开始下载。
setTimeout(() => window.location = 'download_url', 5000);
您还应该看看How to start automatic download of a file in Internet Explorer?
关于javascript - 调用API REST并将zip文件下载到计算机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41700102/