Я пытаюсь загрузить изображение в файловую систему с помощью Multer. Пожалуйста, обратите внимание на соответствующие данные в моем маршруте:Multer не проходит по экспресс-маршруту
const
..
multer = require('multer'),
..;
const storage = multer.diskStorage({
destination: function (req, file, callback) {
callback(null, './uploads');
},
filename: function (req, file, callback) {
callback(null, req.params.id + file.originalname);
}
}),
upload = multer({storage: storage}).single('profilePic');
router.put(
'/:id',
middleware.isLoggedIn,
(req, res, next) => {
User
.findByIdAndUpdate(
req.params.id, req.body.user,
(err, updatedUser) => {
if (err) {
return req.flash('error', err.message);
}
upload(req, res, (err) => {
if (err) {
eval(locus);
return req.flash('error', err.message);
}
updatedUser = req.body.user;
eval(locus);
//redirect show page
res.redirect('/dashboard/profile/' + req.params.id + '/edit');
});
});
});
module.exports = router;
Когда я смотрю на updatedUser первое, что я вижу, это { profilePic: 'data:image/jpeg;base64,....}
, что я делаю неправильно? Это даже не обновление страницы теперь, когда у меня есть функция загрузки здесь. То, что я действительно хочу сделать, это получить назначение для работы на s3, но мне нужно сначала сохранить это.
Что вы используете на передней стороне ... Я имею в виду angular.js или что-то еще ???. –
Nope. Просто ejs и jquery. –