在快速会话中自动刷新会话

时间:2018-11-27 06:17:20

标签: node.js reactjs express session

在快速会话中,我遇到了与nodejs保持持久会话的问题。

在logincontroller.js中

 if(!req.session.authEmail)
 req.session.authEmail = req.body.data.datasendtonode.signInEmailId;
console.log(req.session.authEmail);

这显示了我的会话价值

在 tokenSignIn.js

var useremail=req.session.authEmail;
    console.log(useremail);

此显示未定义

2 个答案:

答案 0 :(得分:0)

您必须更好地详细说明问题的流程并显示会话的配置参数,但是,如果重定向之间存在持久性问题,建议在文档中保存会话,然后再重定向请求。

router.get('/auth', (req, res, next)=>{

    // YOUR  PREVIOUS CODE

    if(!req.session.authEmail){
        req.session.authEmail = req.body.data.datasendtonode.signInEmailId        
    }

    // YOUR NEXT CODE

    req.session.save((err)=>{
        if(!err){
            return res.redirect('/theRouteToRedirect')
        } 
        else { console.log(err) }
    })
})

Session.save(callback)

答案 1 :(得分:0)

默认情况下,Express将会话存储在内存中,并且每次重新启动应用程序时,该会话都会丢失。如果您希望会话继续进行,则必须签出redis-connect或mongo-connect之类的东西。

向我们显示您的身份验证过程和当前会话设置,以便我们更好地回答您的问题。