Как разбить файл в диапазоне байтов в 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()чтобы интегрировать этот поток с вашим запросом на загрузку. Вы не показываете свой код загрузки, чтобы мы могли предложить пример того, как вы могли бы интегрировать это в это.

Другие вопросы по тегам