我已经构建了一个node.js应用程序,它正在按预期工作。我现在面临的唯一问题是当代码从两个不同的会话接收到相同的请求时,结果(结果)正在改变。即第一个请求是获取第二个请求的结果,第二个请求结果是相同的。
我的代码:
app.get('/userpage',function(req,res){
if(req.session.user){
var a = req.session.user; //stored in redis server.
var b = req.session.userid //stored in redis server
//call function(req,res,a,b);
}
}
//Function
exports.functionname = function(req,res,a,b){
//do something
result = a+b;
return result;
}
第一个请求的结果将替换为第二个会话结果。如果我再次单独刷新页面,我会得到两个会话的正确结果。只有当我同时提出相同的请求时才会发生这种情况。请帮忙!
注意:我在Redis服务器中存储会话详细信息。 nopt将任何东西插入我的数据库
答案 0 :(得分:0)
我自己想到了它,这是由于缺少回调而发生的。 Node js需要具有回调才能等待输出