Загрузка видео с использованием Vimeo - PullRequest
0 голосов
/ 31 октября 2019

Я осуществляю загрузку видео в vimeo, используя официальную библиотеку vimeo. Проблема в том, что я загружаю все видео на сервер и только потом отправляю его в vimeo. После отправки я, конечно, убираю, но видео может весить несколько гигабайт, так что это проблема. Я использую async-busboy для сохранения данных, tmp для создания временных файлов. Я хочу отправить чанки на мой сервер и одновременно загрузить их на vimeo, потому что хранение всего видео может сломать мой сервер. Мне нужно как-то накормить vimeo паром.

Дело в том, что vimeo загружает видео по частям, но вы должны кормить его целиком, когда начинаете. Я также рассматриваю библиотеку vimeo-chunk-upload для загрузки непосредственно из внешнего интерфейса, но мне придется хранить закрытый ключ в коде, и это небезопасно.

const { files } = await Busboy(request);

const clip = files[0].pipe(fs.createWriteStream(pathname))

clip.on('finish', () => {
  vimeo.upload(pathname, ...)
})

Внутренняя реализация вызывает много проблем, но это безопасно. Если есть способ загрузить чанки на мой сервер, я могу продолжить. В противном случае мне нужно знать, как обеспечить безопасность на переднем конце, потому что такой подход очень прост.

...