我有一个带有来自 flexiage 的 mysql 插件的 node.js 服务器:这是我的代码:
connection.query('SELECT * FROM students WHERE email="'+req.body.username+'" AND password="'+req.body.password+'"',function(err,rows){
if(rows.length)
{
var response=new Object;
connection.query('SELECT * FROM forums WHERE id="'+rows[0].courseInterest+'"',function(err,course){
response.subscription=course;
response.username=rows[0].email;
response.password=rows[0].password;
response.loginFailed=false;
response.loginAccepted=true;
});
}
else
{
var response=new Object;
response.username="";
response.password="";
response.loginFailed=true;
response.loginAccepted=false;
}
console.log(response);
res.setHeader('Content-Type', 'application/json');
res.send(response);
});
在控制台中,我只是得到一个空白对象。它确实进入了 if 条件,但无法在构造内附加属性。我的猜测是变量范围,因为如果我在 connection.query 构造中执行 console.log,它会根据需要返回结果。请发光。