Necesito obtener la información del nombre de archivo de dos archivos enviados con multer, pero cuando intento enviar un JSON con la respuesta, envía un objeto: prototipo nulo y la información de las imágenes. Pero no puedo acceder a ella. ¿Que puedo hacer? Aquí está mi código:
// Multer File const multer = require("multer"); const path = require("path"); const storage = multer.diskStorage({ destination: (req, file, cb) => { cb(null, path.join(__dirname, "../../imagesDirectory")); }, filename: (req, file, cb) => { cb( null, `${req.params.campana}-${req.params.metodo}-${file.fieldname}-${new Date() .toISOString() .replace(/:/g, "-")}-${file.originalname}` ); }, }); const upload = multer({ storage: storage }); const uploads = upload.fields([ { name: "image1" }, { name: "image2" }, { name: "image3" }, { name: "image4" }, { name: "image5" }, { name: "image6" }, { name: "image7" }, ]); module.exports = uploads;
// Controller const uploadFile = async (req, res) => { if (!req.files) { console.log("You need to add an image"); res.json({ err: "You need to add an image" }); } else { console.log(req.files); let name = req.files.filename; res.json({ msg: "Image Upload", rows: name }); } }; module.exports = { uploadFile };