我在AngularJS中写了一个ExportService.js
,它向远程服务提交HTTP POST请求以下载数据。当从远程服务返回数据时,我正在努力让浏览器下载已解决的promise(数据)。例如,我的代码基本上如下:
ExportService.requestData(); //this returns a promise object.
在我的控制器中,下面的代码会等待解决/失败的承诺。
ExportService.requestData().then(function(data) {
//how to process the data for download here?
$log.info(JSON.stringify(data)); //print out the data
}).catch(function(err) {
//handle error here
}).finally(function(complete){
//complete the request here
});
基本上,我认为如何将数据流转换为文件并让它在浏览器中下载。
答案 0 :(得分:0)
ExportService.requestData().then(function(result) {
var fileURL = URL.createObjectURL(result.data);
window.open(fileURL, '_blank', '');
});