Blob, шаг загрузки его в память JavaScript избегается. JavaScript передает поток в FileSaver до его загрузки.
лизовалхранитель угловых файлов в мой проект с целью загрузки файлов, и он отлично работает для небольших файлов, но для файлов размером более 50 МБ я вижу следующую ошибку и загрузка останавливается после 35-50 МБ.
net::ERR_INCOMPLETE_CHUNKED_ENCODING
Я попытался исследовать этот вопрос в Интернете и обнаружил, что ограничение на загрузку составляет 500 МБ, поскольку очевидно, что в оперативной памяти не может храниться столько информации. К сожалению, я не нашел никакого другого вполне объяснения, как решить эту проблему, тогда я спросил бэк-энда и получил ответ, что на его стороне все в порядке.
Так где моя проблема? и как я могу решить эту проблему? Я ценю любую помощь
вот часть моего кода:
Сервисы
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)
}