Node.js 如何在Multer-s3中使用动态bucket名称进行文件上传
我正在尝试使用NodeJS将文件上传到AWSS3 我的要求是在multerS3存储对象中使用bucket的动态值Node.js 如何在Multer-s3中使用动态bucket名称进行文件上传,node.js,amazon-web-services,amazon-s3,multer-s3,Node.js,Amazon Web Services,Amazon S3,Multer S3,我正在尝试使用NodeJS将文件上传到AWSS3 我的要求是在multerS3存储对象中使用bucket的动态值 storage: multerS3({ s3: s3, bucket: function (req, file, cb) { console.log(" bucketName is >> "+JSON.stringify(req.bucketName)); cb(null, req.bu
storage: multerS3({
s3: s3,
bucket: function (req, file, cb) {
console.log(" bucketName is >> "+JSON.stringify(req.bucketName));
cb(null, req.bucketName)
},
limits : {
fileSize : Number(Constants.UPLOADED_IMAGE_SIZE)
},
metadata: function (req, file, cb) {
cb(null, { fieldName: file.fieldname });
},
key: function (req, file, cb) {
cb(null, file.originalname)
}
})
我试图通过请求对象传递值,并在bucket参数中使用它。但它是未定义的
在这两种情况下,req.bucketName和req.body.bucketName都是未定义的
需要帮助来解决这个问题
我的邮递员要求如下
感谢您的帮助。如果您使用Postman并将文件作为参数,则在包含该文件后,将不再包含其他内容 交换参数的顺序,并将bucketName放在文件前面,您将在正文中看到它 第一张图片显示的顺序不正确,body将没有bucketName元素。第二张图片将正确通过Busboy,主体将有一个bucketName元素“testName”