Node.js 无法在nodejs中通过post方法插入数据?

Node.js 无法在nodejs中通过post方法插入数据?,node.js,mongodb,post,postman,mean-stack,Node.js,Mongodb,Post,Postman,Mean Stack,我是个新手。我不能在nodejs中使用post方法将任何数据插入mongoDB。在这里,我添加了所有相关的nodejs代码。 . . . . . . . . . index.js const express = require('express'); const bodyParser = require('body-parser'); const { mongoose } = require('./db.js'); var employeeController = require('../

我是个新手。我不能在nodejs中使用post方法将任何数据插入mongoDB。在这里,我添加了所有相关的nodejs代码。 . . . . . . . . .

index.js

const express = require('express');
const bodyParser = require('body-parser');


const { mongoose } = require('./db.js');
var employeeController = require('../node/controller/employeeController');


var app = express();        //calling express
app.use(bodyParser.json());     //congigure express to send JSON data

var urlencoded_body_parser = bodyParser.urlencoded({
    extended: true
});

app.listen( 3000, () =>
    console.log("Server started successfully at Port 3000.")
);


app.use('/employees' , employeeController);
app.use(urlencoded_body_parser);
employee.js

    const mongoose = require('mongoose');

var Employee = mongoose.model('Employee',{
    name : String ,
    position :  String ,
    office : String,
    salery : Number
})

module.exports = { Employee };
employeeController.js

   const express = require('express')
var router = express.Router();
var ObjectId = require('mongoose').Types.ObjectId;

var { Employee } = require('../model/employee');

router.post('/', (req,res) => {
    var emp = new Employee({
        name : req.body.name,
        position : req.body.position,
        office : req.body.office,
        salary : req.body.salary
    });
    emp.save((err,doc) =>{
        if (!err){
            res.send(doc);
            console.log(doc);
        } else {
            console.log("Operation Failed : " + JSON.stringify(err,undefined,2));
        }
    })
});

router.put('/:id', (req,res)=> {
    if (!ObjectId.isValid(req.params.id)) {
        return res.status(400).send('No record with the given Id ${req.params.id}');
    }

    var emp = {
        name : String ,
        position :  String ,
        office : String,
        salery : Number
    };

    Employee.findByIdAndUpdate(req.params.id, { $set : emp },(err,docs) => {
        if (!err) {
            res.send(docs);
        } else {
            console.log('Error in Updating the Employee details' + JSON.stringify(err,undefined,2))
        }
    });
});


module.exports = route

当我使用postman插入数据时,它只向db插入_id和_v。没有我的JSON数据

看起来您只向服务器发送原始文本。 要解决此问题,您需要指定内容类型为
application/json

在《邮递员》中可能是这样的:

看起来您只向服务器发送原始文本。 要解决此问题,您需要指定内容类型为
application/json

在《邮递员》中可能是这样的:

您的
req.body.name
和其他
req.body.
参数是
未定义的
因此首先确保
req.body
包含body参数您的
req.body.name
和其他
req.body.
参数是
未定义的
因此首先确保
req.body
包含bodyparams