Commit 0e24a200 authored by 陈志良's avatar 陈志良

判断session是否存在openUser

parent 8666689d
...@@ -15,55 +15,59 @@ exports.identifyUser=function() { ...@@ -15,55 +15,59 @@ exports.identifyUser=function() {
return function(req, res,next){ return function(req, res,next){
if(!req.session.mobileForumUser){ if(!req.session.mobileForumUser){
forumUserService.getUserByUid(req.session.openUser.openId,function(err,doc){ if(req.session.openUser){
if(err){ forumUserService.getUserByUid(req.session.openUser.openId,function(err,doc){
next(err); if(err){
}else{ next(err);
if(doc){
req.session.mobileForumUser={
userId:doc._id,
openId:doc.uid
};
if(req.session.source){
if(req.session.source !== req.session.mobileForumUser.userId){
req.session.mobileForumUser.source = req.session.source;
delete req.session.source;
}
}
next(null);
}else{ }else{
if(req.session.tmpOpenId){ if(doc){
req.session.mobileForumUser={
userId:doc._id,
openId:doc.uid
};
if(req.session.source){
if(req.session.source !== req.session.mobileForumUser.userId){
req.session.mobileForumUser.source = req.session.source;
delete req.session.source;
}
}
next(null); next(null);
}else{ }else{
req.session.tmpOpenId=req.session.openUser.openId; if(req.session.tmpOpenId){
var entity={ next(null);
uid:req.session.openUser.openId, }else{
nickName:req.session.openUser.nickName, req.session.tmpOpenId=req.session.openUser.openId;
icon:req.session.openUser.headPic, var entity={
ent_code:req.session.user.ent_code uid:req.session.openUser.openId,
}; nickName:req.session.openUser.nickName,
forumUserService.createUser(entity,function(err,doc){ icon:req.session.openUser.headPic,
if(err){ ent_code:req.session.user.ent_code
next(null); };
}else{ forumUserService.createUser(entity,function(err,doc){
req.session.mobileForumUser={ if(err){
userId:doc._id, next(null);
openId:doc.uid }else{
}; req.session.mobileForumUser={
if(req.session.source){ userId:doc._id,
if(req.session.source !== req.session.mobileForumUser.userId){ openId:doc.uid
req.session.mobileForumUser.source = req.session.source; };
delete req.session.source; if(req.session.source){
if(req.session.source !== req.session.mobileForumUser.userId){
req.session.mobileForumUser.source = req.session.source;
delete req.session.source;
}
} }
}
next(null); next(null);
} }
}); });
}
} }
} }
} });
}); }else{
next('no openUser in session');
}
}else{ }else{
if(req.session.source){ if(req.session.source){
if(req.session.source !== req.session.mobileForumUser.userId){ if(req.session.source !== req.session.mobileForumUser.userId){
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment