Как разбить файл в диапазоне байтов в NodeJS
Я пытаюсь загрузить большое видео в API. API сделал обязательным, чтобы видео было разделено на несколько файлов и загружено с помощью разных URL-адресов, которые были предоставлены мне в предыдущем
initializeUploadRequest
.
Теперь представьте, что у меня есть файл
mymove.mp4
и я должен разделить файл в пределах этого диапазона байтов:
firstByte= 0
а также
lastByte= 4194303
.
1 ответ
Под «разделением файла» я предполагаю, что ваша цель - отправить загрузку каждой части диапазона байтов файла.
Эффективный способ сделать это — передать файл в конечную точку загрузки. Вы можете создать readStream, который будет передавать только диапазон байтов, используя
start
а также
end
варианты для
fs.createReadStream(filename, options)
.
const readStream = fs.createReadStream(filename, {
start: firstByte,
end: lastByte
});
Затем вы, вероятно, использовали бы что-то вроде
.pipe()
чтобы интегрировать этот поток с вашим запросом на загрузку. Вы не показываете свой код загрузки, чтобы мы могли предложить пример того, как вы могли бы интегрировать это в это.