Ловить ошибки и анализировать данные формы с помощью multer - PullRequest
0 голосов
/ 27 сентября 2019

У меня есть проблема, которую я хочу решить.Я использую 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 
  })
}

Мне нужны обе эти вещи для анализа полей формы, а также для обнаружения ошибки, если она есть.Как мне это сделать?

В идеале я хотел бы использовать второй подход, чтобы я мог сначала сделать запрос к базе данных, а затем сохранить файл с идентификатором из базы данных.Так что мне не нужно хранить путь.Но мне нужно разобрать форму одновременно.

...