Итак, я хочу, чтобы пользователи могли загружать только jpg
jpeg
или png
файлы. Но код, который у меня есть, позволяет загружать файлы gif
. Вот код:
let storage = multer.diskStorage({
destination: function (req, file, cb) {
cb(null, '/public/images')
},
filename: function (req, file, cb) {
crypto.pseudoRandomBytes(16, function (err, raw) {
cb(null, raw.toString('hex') + Date.now() + '.' + mime.getExtension(file.mimetype));
});
}
});
let upload = multer({
limits: {
fileSize: 1000000
},
fileFilter: function(req, file, cb) {
if(!file.originalname.match(/\.(jpg|jpeg|png)$/)){
return cb('File must be an image.');
}
cb(undefined, true);
},
storage: storage
});
Маршрут:
app.post('/post', upload.any(), recaptcha.middleware.verify, (req, res) => {
img: req.files[0].filename,
});
Почему проверка не работает?