У меня есть проблема, которую я хочу решить.Я использую multer для сохранения файла, а также для анализа других полей в форме.Если я использую Multer, например, так:
var uploadMiddleware = upload.single('avatar')
app.post('/profile', uploadMiddleware, function (req, res, next) {
// rest of code
})
Тогда я не могу поймать ошибки.Например, неправильное имя поля.Если есть поле с файлом, отличным от avatar
, я получаю сообщение об ошибке, и приложение разрывается.Что не идеально.Я хочу перехватить ошибку, если она есть, и зарегистрировать ее, например.
Если я использую этот подход, я могу сохранить файл и поймать ошибку, но не могу разобрать другие поля.
var upload = multer().single('avatar')
app.post('/profile', function (req, res) {
upload(req, res, function (err) {
if (err) {
// An error occurred when uploading
return
}
// Everything went fine
})
}
Мне нужны обе эти вещи для анализа полей формы, а также для обнаружения ошибки, если она есть.Как мне это сделать?
В идеале я хотел бы использовать второй подход, чтобы я мог сначала сделать запрос к базе данных, а затем сохранить файл с идентификатором из базы данных.Так что мне не нужно хранить путь.Но мне нужно разобрать форму одновременно.