I am working on Nodejs/Expressjs, Right now i am working on Rest API, I m trying to upload image but i want to put validation for image size ( for example 300*300) Here is my current code,How can i do this ?
var storage = multer.diskStorage({
destination: function (req, file, callback) {
callback(null, './uploads');
},
filename: function (req, file, callback) {
var sizeOf = require('image-size');
var sizeOf = require('image-size');
const originalname = file.originalname;
const fileExt = originalname.split(".").pop();
const excatName = originalname.split(".").slice(0, -1).join(".");
console.log("mimetype is " + file.mimetype); // GETTING FILE EXTENSION NAME
callback(null, excatName + "-" + Date.now().toString() + "." + fileExt);
},
});
var multerFilter = (req, file, cb) => {
const memeT = file.mimetype.split('/')[1];
const restrictToMemeType = ['jpeg','jpg','png','gif'];
if (restrictToMemeType.includes(memeT)) {
cb(null, true);
} else {
cb(new Error('sorry invalid meme type'), false);
}
};
var upload = multer({ storage: storage,fileFilter: multerFilter }).single('userPhoto');
const uploadavatar = function (req, res) {
upload(req,res,function(err) {
if(err) {
return res.end("Error uploading file." + err);
}
res.end("File is uploaded"+req.file.filename);
});
};