我无法在js中下载文件结果。我将文件结果返回给js,但不知道如何下载
简而言之,我正在将Word文档从控制器返回到js,在其中我需要下载它并在js中处理它。
我正在调用方法和文件结果的js方法返回。
vm.establishmentAllRecord = function (page) {
if (page != undefined) {
vm.page = page;
}
var searchCriteria = {
From: vm.From,
To: vm.To,
Region: vm.SelectedRegion
}
surveyService.establishmentAllRecord(searchCriteria, (vm.page * vm.pagesize), vm.pagesize, vm.sortBy, vm.sortingDirection).then(function (d) {
var result = JSON.parse(d.data.data);
???
});
我需要问如何处理来自控制器的返回文件结果?这个地方并下载
希望您的建议
已编辑:
我以这种方式从控制器返回文件系统,
FileResult result1 = PrintSurveyDetailsReport(VisitId);
return result1;
result1 contains 'ContentType="application/octet-stream"' , "FileContents" and "FileDownloadName"
答案 0 :(得分:0)
使用以下功能
var downloadFile = function (data, fileName, contentType) {
contentType = contentType || "application/octet-stream";
var blobObject = new Blob([data], {type: contentType});
try {
window.navigator.msSaveOrOpenBlob(blobObject, fileName);
}
catch (exp) {
var link = document.createElement('a');
link.setAttribute('href', URL.createObjectURL(blobObject));
link.setAttribute('download', fileName);
document.body.appendChild(link); // Required for FF
link.click();
document.body.removeChild(link);
}
};