我想使用$ http下载exe文件,当我管理数据时会显示给我,但我无法下载它。

$http({
        url: url,
        method: "GET",
        headers: {
           'Content-type': 'application/json'
        }
    }).success(function (data, status, headers, config) {
        console.log(data);

        window.open(objectUrl);
    }).error(function (data, status, headers, config) {
        //upload failed
    });

任何帮助,将不胜感激。

最佳答案

您可以使用响应类型,例如responseType:“ arraybuffer”

$http({
    url: url,
    method: "GET",
    headers: {
       'Content-type': 'application/json'
    },
  responseType: "arraybuffer"
}).success(function (data, status, headers, config) {
    console.log(data);
   var file = new Blob([data], { type: 'application/binary' });
var fileURL = URL.createObjectURL(file);
window.open(fileURL);
var link=document.createElement('a');
link.href=fileURL;
link.download="testing.exe";
link.click();
    window.open(objectUrl);
}).error(function (data, status, headers, config) {
    //upload failed
});


并使用Blob并通过类型“ application / binary”并创建一个下载链接。

09-11 08:02
查看更多