node.js - 使用 vimeo 上传视频

标签 node.js vimeo vimeo-api busboy

我正在使用官方 vimeo 库实现将视频上传到 vimeo。问题是我将整个视频上传到服务器,然后才将其发送到 vimeo。当然,发送后我会清理它,但是视频的重量可能有几 GB,所以这是一个问题。我使用 async-busboy 保存数据,使用 tmp 创建临时文件。 我想将 block 发送到我的服务器并同时将它们上传到 vimeo,因为存储整个视频可能会破坏我的服务器。我需要以某种方式向 vimeo 提供 Steam 。

问题是 vimeo 会分块上传视频,但您在开始时必须将整个视频提供给它。我还在考虑使用名为 vimeo-chunk-upload 的库直接从前端上传,但我必须将私钥存储在代码中,这是不安全的。

const { files } = await Busboy(request);

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

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

后端实现会导致很多问题,但它是安全的。如果有办法使用 block 上传到我的服务器,我可以继续。否则,我需要知道如何确保前端的安全,因为这种方法非常简单。

最佳答案

您可以在后端服务器生成视频链接,同时可以在前端上传视频。这种方法将保护您的访问 token 并减少后端服务器的负载。

根据https://developer.vimeo.com/api/upload/videos您仅在生成视频链接时需要访问 token ,而不是在上传视频时需要。

希望这有帮助!

关于node.js - 使用 vimeo 上传视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58649333/

相关文章:

php - 使用 node.js 向 API 发出请求

iframe - 无法让 Vimeo <iframe> 嵌入代码在 IE7/8/9 中工作

vimeo - 使用 Vimeo API 获取一个不会过期的视频文件 URL

javascript - 自定义错误类作为 Node 模块发送自定义错误响应

mysql - 坚持从 Node 与 RDS/Aurora 对话

javascript - io.emit(...) 和循环有什么区别?

node.js - 通过nodejs vimeo api为vimeo视频添加标题?

javascript - 使用 android native 播放器播放 vimeo 视频?

Android ExoPlayer 播放私有(private) Vimeo 视频

javascript - Vimeo js API 加载视频