是否可以将jwt存储在cookie中以通过使用password-jwt在移动身份验证中使用它?

问题描述

护照配置
..................................................... ................................................... ..............................................

const cookieExtractor = (req) => {
    let token = null
    if(req && req.cookies){
        token = req.cookies.jwt
    }
    console.log(token)
    return token
}

passport.use(new jwtStrategy({jwtFromrequest:cookieExtractor,secretorKey:'sphinx'},(payload,done) => {
    user.findById(payload.userId,(err,User) => {
        if(err){
            return done(err,false)
        }
        if(User){
            return done(null,User)
        }else{
            return done(null,false)
        }
    })
}))

**检查用户是否登录**

router.get('/authentication',passport.authenticate('jwt',{session:false}),(req,res) => {
    if(req.isAuthenticated()){
        const {email,name,role} = req.user
        res.status(200).json({
            user:{
                email,role
            }
        })
    }else{
        res.status(200).json({
            user:null
        })
    }
})

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)