req.body总是返回undefined

时间:2018-08-10 11:28:55

标签: node.js express body-parser

我尝试创建注册api,但是req.body出现了一些问题,当我console.log时总是返回未定义 这是我的controller.js

const{ users: User} = require('../models/index');
const config = require('../config/config');
const jwt = require('jsonwebtoken')

const jwtSignUser = (user) => {
const ONE_WEEK = 60 * 60 * 24 * 7
return jwt.sign(user, config.authentication.jwtSecret, {
    expiresIn: ONE_WEEK
})
}
module.exports = {
    async register (req, res) {
        try{
            const user = await User.create(req.body)
            const userJson = user.toJSON()
            res.send({
                user: userJson,
                token : jwtSignUser(userJson)
            })
        } 
        
    catch (err){
        res.status(400).send({
            error:err
            
        })

    }
},
}

这是我的身体解析器声明

app.use(bodyParser.urlencoded({ extended: false }));
app.use(bodyParser.json());

 任何人都可以注意到它有什么问题吗?

1 个答案:

答案 0 :(得分:2)

请确保在添加body-parser代码之后必须添加路由代码

app.use(bodyParser.urlencoded({ extended: false }));
app.use(bodyParser.json());

//Add your route after these lines