Я создаю API остальных, используя экспресс. Когда я делаю POST-запрос с телом, я не получаю в ответ данные, которые я отправляю. Я получаю единственный идентификатор объекта, а версия и данные не сохраняются в базе данных MongoDB. Первый код представляет собой запрос API создания маршрута, второй - для схемы и модели, а третий раздел кода - для запуска сервера. В первом разделе я сделал пост-запрос, который отправит данные в MongoDB и сохранит в файле, для хранения данных в схеме MongoDB, а модели будут созданы во втором разделе. Третий раздел кода используется для запуска сервера.
const express = require('express')
const route_ = express.Router()
const proSchema_ = require('../models/productModel')
route_.post('/product', function(req, res, next){
console.log("request",req.body)
proSchema_.create(req.body).then(function(PRODUCT){
res.send(PRODUCT)
}).catch(next)
})
const mongoose = require('mongoose')
const schema = mongoose.Schema
// creating schema & model
const prodSchema = new schema({
pName: String,
quantity: String
});
const Product_ = mongoose.model('product', prodSchema);
module.exports = Product_
const express = require('express')
const app = express()
const Route = require('./router/router')
const bodyParser = require('body-parser')
const urlencodedBodyParser = bodyParser.urlencoded({
extended: true
})
const mongoose = require('mongoose')
mongoose.connect('mongodb://localhost:27017/curdApp', { useNewUrlParser: true })
mongoose.Promise = global.Promise
app.use(bodyParser.json())
app.use(urlencodedBodyParser)
app.use('/api',Route)
// error handling
app.use(function(err, req, res, next){
res.status(422).send({
error: err.message
})
})
app.listen( process.env.port || 4000, function(){
console.log('Server is listening on port: 4000 ')
})
I want the POST API response with data which I request in the body. I get the response only ObjectID and __v:0. I am getting issue while making a request.