Я пытаюсь создать 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
в почтальоне.