如何使用React JS将视频文件上传到S3存储桶。我目前正在开发React JS应用程序,必须将视频文件上传到S3存储桶中。我进行了很多搜索,但只能找到“图片” 上传的部分。但是我想知道如何将视频文件上传到S3存储桶(有效方式)。如果有人知道,请分享您的答案。
谢谢。
答案 0 :(得分:1)
使用本教程中使用的multer-s3节点软件包:https://www.youtube.com/watch?v=ASuU4km3VHE&t=3s
像这样将contentType:multerS3.AUTO_CONTENT_TYPE添加到multer对象。
var upload = multer({
storage: multerS3({
s3: s3,
bucket: 'some-bucket',
contentType: multerS3.AUTO_CONTENT_TYPE,
metadata: function (req, file, cb) {
cb(null, {fieldName: file.fieldname});
},
key: function (req, file, cb) {
cb(null, Date.now().toString())
}
})
})
这将在您上传视频文件时将存储桶对象的Content-type元数据设置为video / quicktime。可以使用媒体播放器和s3中的对象url播放这些视频对象。
答案 1 :(得分:0)
从技术上讲,上传视频就像上传任何二进制文件(例如图片,音频文件等)一样。但是,由于这些视频文件很快就会变得太大,因此建议您使用以下一种或多种方法:
分段上传:如果文件大于100MB,则强烈建议使用。它可以帮助您提高吞吐量,恢复中断的上传以及暂停和恢复上传的能力。了解更多here。
S3传输加速:使用CDN的用户将被上传到地理位置更近的位置,这也将为他们加快速度。了解更多here。
一些有用的库进行检出:EvaporateJS,react-s3-uploader-multipart