【发布时间】:2020-01-08 03:25:19
【问题描述】:
我正在使用 express 框架在窗口中创建一个 nodejs api。我已经使用过 body-parser.json()。但是 req.body 在 linux 中是空的。程序在 windows 中正常工作,但在 linux 中,req.body 为空,req.body.name 键未定义。
我已经尝试了以下步骤:- app.use(bodyParser.urlencoded({extended:true})) app.use(bodyParser.json())
const express = require('express'),
app = express(),
config = require('./config/configFile'),
route = require('./routes/userRoute'),
bodyParser = require('body-parser'),
mongoose = require('mongoose')
app.use(bodyParser.urlencoded({extended:true}))
app.use(bodyParser.json()) // with this you can send the data to api in json format
app.get('/',(req,res)=>{
res.send({
"message":"API started"
})
})
app.use('/api/',route)
mongoose.Promise = global.Promise
mongoose.connect(config.dbPath,{useNewUrlParser: true})
.then(()=>{
console.log("Db is connected")
}).catch(err=>{
console.log(err)
})
app.listen(config.serverPort,()=>{
console.log('server started')
})
const userModel = require('../models/userModel')
module.exports = {
"registerUser": (req,res)=>{
if(!req.body){
res.status(400).send({
"message": "User Detail Cannot be empty"
})
} else{
const user = new userModel({
name : req.body.name,
email : req.body.email,
password : req.body.password
})
user.save().then(data=>{
res.status(200).send(data)
}).catch(err=>{
res.status(500).send({
"message": err.message || "Something went wrong"
})
})
}
},
"login":(req,res)=>{
res.send({
"message":"This is an register method"
})
}
}
【问题讨论】:
标签: javascript node.js mongodb express