Я делаю небольшой скрипт для загрузки файлов с узла.Соединение, которое я имею с сайтом, очень неустойчиво и обычно падает несколько раз.Моя идея состоит в том, чтобы иметь возможность восстановить загрузку, если соединение обрывается в том же месте, где оно было ранее.Я использую axios и progress-stream:
const download = (link, size, localPath, transferred = 0) => {
return new Promise((resolve, reject) => {
axios({
url: link,
method: 'GET',
responseType: 'stream'
})
.then(response => {
const writer = fs.createWriteStream(localPath);
const str = progress({
time: 100,
length: size,
transferred: transferred
});
str.on('progress', function(progress) {
console.log(progress);
});
response.data
.pipe(str)
.pipe(writer);
writer.on('finish', resolve);
writer.on('error', reject);
})
.catch(reject);
});
};
Когда соединение обрывается и я перезапускаю скрипт, я передаю параметр 'переданный' размер, который в данный момент не завершен, но загрузка начинается с 0. Есть ли способ начать загрузку с того места, где она была прервана?