1

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);
    });
};
Maria
  • 11
  • 2
  • Read/parse the uploaded file and check the pixels. – Marc May 13 '23 at 18:23
  • Does this answer your question? [How to upload, display and save images using node.js and express](https://stackoverflow.com/questions/15772394/how-to-upload-display-and-save-images-using-node-js-and-express) – rx2347 May 13 '23 at 18:58

0 Answers0