我已经在我的项目中使用angular file saver实现了文件下载功能,对于小文件它可以正常工作。但是对于大于50MB的文件,下载会在35-50MB后停止,并显示以下错误信息。
net::ERR_INCOMPLETE_CHUNKED_ENCODING
我在互联网上尝试调查了这个问题,并发现下载限制为500MB,因为很明显无法将如此多的信息存储在RAM中。不幸的是,我没有找到任何其他解释如何解决这个问题,然后我问了后端工程师,得到的答案是他那边一切正常。
那么我的问题在哪里?我该如何解决这个问题?感谢任何帮助。
以下是我的代码的一部分:
服务
function attachment(obj) {
custom.responseType = "arraybuffer";
delete custom.params.limit;
delete custom.params.offset;
delete custom.params.orderBy;
delete custom.params.insertedAt;
var contentType = obj.mimeType;
var name = obj.displayFilename;
return $http.get(Config.rurl('attachments') + '/' + obj.bucketName + '/' + obj.path + '?displayFilename=' + obj.displayFilename, custom)
.then(function (response) {
var data = new Blob([response.data], { type: contentType });
FileSaver.saveAs(data, name);
delete custom.responseType
})
.catch(function (err) {
delete custom.responseType;
alert("It has happened an error. Downloading has been stopped") ;
});
}
控制器函数
$scope.download = function (obj) {
lovServices.attachment(obj)
}