0
我试过下面的代码。从node.js和mongoose回调返回值
function authenticate(accesskey) {
var res = someModel.findOne({'uid': accesskey}, function (err , user) {
if(err){
console.error("Can't Find.!! Error");
}
if(user===null){
return false;
}
else{
console.log(user);
return true;
}
});
console.log(res);
return res;
}
但res
这里返回猫鼬的数据类型。
我要拨打的认证功能,这样的 - 从穆斯塔法GENC
实现方案越来越舒服回调我结束了下面的代码后后
if(authenticate(req.params.accesskey)){
//do something
}
else{
//do something else
}
更新。
function authenticate(req, result, accesskey, callback) {
var auth = null;
someModel.findOne({'uid': accesskey}, function (err , user) {
console.log("try authenticate");
if(err){
console.error(err);
}
if(user===null)
auth = false;
else
auth = true;
callback(auth);
});
}
我这样使用它 -
routeHandler(req, reply) {
authenticate(req, reply, req.params.accesskey , function (auth) {
if(auth) {
//"primary code"
}
else {
//fallback
}
});
}