Express route return undefined for req.files using multer middleware

Viewed 27

I am new to multer and when I try to upload an image from postman it returns the error of req.files is undefined and what is my mistake?
here is my code

const multer = require("multer");

const multerStorage = multer.memoryStorage();

const multerFilter = (req, file, cb) => {
    if (file.mimetype.startsWith("image")) {
        cb(null, true);
    } else {
        cb("Please upload only images.", false);
    }
};

const upload = multer({
    storage: multerStorage,
    fileFilter: multerFilter
});

const uploadFiles = upload.array("picture", 3);

const uploadImages = (req, res, next) => {
    console.log("Request file ---"+req.files);//here req.files always return undefined
    console.log("uploadImages section"+JSON.stringify(req.body));


    uploadFiles(req, res, err => {
        if (err instanceof multer.MulterError) {
            if (err.code === "LIMIT_UNEXPECTED_FILE") {
                return res.send("Too many files to upload.");
            }
        } else if (err) {
            console.log(err)
            return res.send(err);
        }

       next();
    });
};

Thank You

0 Answers
Related