我做了一个ajax调用
var formData = new FormData();
formData.append('name', 'John');
formData.append('company', 'ABC');
$.ajax({
url: url,
data: formData,
processData: false,
contentType: false,
success: function(data){
window.location.href = data.URL; // data does not have URL attribute.
},
error: function(err){}
});
在这里,理想情况下我应该将excel文件下载作为响应。
然而,
success: function(data){
}
这里我得到的data
包含一堆编码值,我可以在浏览器控制台中看到。我如何在这里获取下载URL。
答案 0 :(得分:0)
AJAX旨在用于发送/检索数据,因此显然您将获得成功数据。
您应该使用普通表单进行POST,并确保服务器正在设置正确的标题。
<form method="post" action="/path/to/excel/file">
...
</form>
表单生成POST后,如果您的浏览器不支持查看excel文件,则表示服务器提供数据和HEADER将开始下载。
答案 1 :(得分:0)
出于安全原因,您可以下载带有保存在硬盘驱动器上的ajax的文件。 之前的问题涉及同一问题: Download a file by jQuery.Ajax