【发布时间】:2021-01-14 13:23:40
【问题描述】:
我正在使用 multer 在 Amazon S3 中存储文件。我需要从我的控制器模块中获取文件的 multerS3 密钥以供以后访问。我的路线模块:
var express = require('express');
var router = express.Router();
var post_controller = require('../controllers/postController')
var aws = require('aws-sdk');
var multer = require('multer');
var multerS3 = require('multer-s3');
var mongoose = require('mongoose');
const s3 = new aws.S3();
const upload = multer({
storage: multerS3({
s3: s3,
bucket: 'compressor-input',
metadata: function(req, file, cb) {
cb(null, {fieldName: file.fieldname});
},
key: function (req, file, cb) {
cb(null, mongoose.Types.ObjectId())
}
})
});
router.post('/:id/upload', upload.array('item_images', 12), post_controller.images_upload);
【问题讨论】: