我目前正在做一些从 angular2 前端到 express 后端的用户注册。除了从请求正文中获取值外,一切正常。看看这个。
用户路由.js
userRouter.route('/signup')
.post(function(req, res){
console.log(req.body);
mongoose.connect(url, function(err){
var user = {
username: req.body.username,
password: req.body.password,
firstname: req.body.firstname,
lastname: req.body.lastname,
gender: req.body.gender,
address: req.body.address,
contact: req.body.contact,
email: req.body.email
};
console.log(user);
users.create(user, function(err, results){
// res.redirect('http://localhost:4200/login');
//tobeChanged
console.log(results);
mongoose.disconnect();
});
});
});
在第一个 console.log 上,我试图查看 req.body 上是否有值,然后在第二个 console.log 上,我试图查看 user 变量得到了一些值(value)。这就是发生的事情。
如我们所见,user 变量没有值,但我通过 req.body.name 访问它。有人可以帮我澄清一下吗?
可选问题:那些\n 困扰着我。如何摆脱它?
最佳答案
问题:
此处您的请求对象的范围不同。你想在函数回调中使用请求对象。
So one thing you can do is passing that value which calling callback.
解决方法: 改变这个
mongoose.connect(url, function(err){
为此
mongoose.connect(url, function(err,req){
希望这会有所帮助。谢谢
关于node.js - 请求正文有值(value),但我无法访问它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41177291/