请注意,您的 Amazon S3 存储桶必须在“美国东部 (弗吉尼亚北部)”区域创建。如果您没有这样做,上传将无法正常工作,并且您会看到来自 AWS 的“InvalidRequest”错误。
使用 Sails,您只需很少的额外配置即可将文件上传流式传输到 Amazon S3。
首先安装 S3 Skipper 适配器
npm install skipper-s3 --save
然后在您的控制器之一中使用它
uploadFile: function (req, res) {
req.file('avatar').upload({
adapter: require('skipper-s3'),
key: 'S3 Key',
secret: 'S3 Secret',
bucket: 'Bucket Name'
}, function (err, filesUploaded) {
if (err) return res.serverError(err);
return res.ok({
files: filesUploaded,
textParams: req.allParams()
});
});
}