Загрузка файла с Multer не позволяет обрабатывать запрос - PullRequest
0 голосов
/ 26 января 2019

Я пытаюсь создать API для отдыха, который будет принимать некоторые простые данные для элемента.Раньше я использовал multer в качестве обработчика файлов в моем проекте.Вот мой код для импорта и обработки конфигурации multer:

const multer = require('multer')
const upload = multer({ dest: 'uploads/' })

И вот соответствующий app.post маршрут для этого:

// POST
router.post('/', upload.single('pi') ,(req, res, next) => {
  console.log(req.body)
  // console.log(req.file);
  console.log('hi there')
  const product = new Product({
    // _id: new mongoose.Types.ObjectId(),
    nm:   req.body.name,
    pr:   req.body.price,
    ca:   req.body.category,
    ti:   req.body.title,
    tg:   req.body.tag
  })

  product
    .save()
    .then(result => {
      res.status(201).json({
        message: 'Handeling POST requests...',
        createdProduct: {
          _id: result._id,
          nm:  result.nm,
          pr:  result.pr,
          ca:  result.ca,
          ti:  result.ti,
          tg:  result.tg,
          meta: {
            type: 'get',
            url: 'http://localhost:4000/products/' + result._id,
          }
        }
      })
      // console.log(result)
    })
    .catch(err => {
      console.log(err)
      res.status(500).json({
        error: err
      })
    })
})

Проблема

Проблема в том, что файл загружается в каталог uploads/, но продукт не создается.После загрузки файла в соответствующую директорию я получаю Could not get any response в Почтальоне.Также я попытался зарегистрировать req.body внутри мультера, но я ничего не получил в своем терминале.Я также установил Content-Type: на application/x-www-form-urlencoded и использую form-data в почтальоне.

...