我正在使用react-s3-uploader
节点包,它将signingUrl
用于获取用于将对象存储到S3中的signedUrl。S3.getSignedUrl接受多个内容类型
目前我配置了一个lambda函数(带有一个API网关端点)来生成这个signedUrl。一些修修补补后,我找到了工作,但注意到,我在我的lambda函数的content-type
,它看起来像这样来定义:
var AWS = require('aws-sdk');
const S3 = new AWS.S3()
AWS.config.update({
region: 'us-west-2'
})
exports.handler = function(event, context) {
console.log('context, ', context)
console.log('event, ', event)
var params = {
Bucket: 'video-bucket',
Key: 'videoname.mp4',
Expires: 120,
ACL: 'public-read',
ContentType:'video/mp4'
};
S3.getSignedUrl('putObject', params, function (err, url) {
console.log('The URL is', url);
context.done(null, {signedUrl: url})
});
}
的问题是,我想这个标识的URL能够接受多种类型的视频文件,并且我尝试将ContentType
设置为video/*
,这不起作用。另外,因为这个lambda端点并不是真正需要上传的,所以我无法事先将文件类型传递给这个函数。
谢谢你让我知道!我只是想确保没有更好的方法,然后才能实施类似'hackish'解决方案。 –