登录权限考证session

道理

登录胜利后,保留登录信息到文件/数据库种,同时保留建立时刻和逾期时刻,下次考证的时刻取出来做考证

运用express-session中间件来举行session的操纵

装置express-session

npm install express-session

设置expess-session中间件

//运用express-session插件
app.use(session({
  secret: 'keyboard cat',//这是秘钥
  resave: false,
  saveUninitialized: true,
  cookie: { 
    path: '/',//发送的cookies途径
    httpOnly: true,//是不是http要求
     secure: false,
      maxAge: 1000*60*60 //设置逾期的时刻,以ms为单元
  }
}))

发送给前端

假如登录胜利,发送给前端,前端存储,下次要求时携带给后端

req.session.userInfo={
    id:_judge_result[0]._id,
    level:_judge_result[0].level||8//8为品级权限
}

登录考证

const isSignin =(req,res)=>{
    if(req.session.userInfo){
       res.render('user',{
           code:200,
           data:JSON.stringify({
               msg:"用户已登录了"
           })
       })
    }else{
        res.render('user',{
            code:403,
            data:JSON.stringify({
                msg:"用户未登录,请从新登录"
            })
        })
    }
}

总结:后端存储考证信息的体式格局,假如用户过大,需要做负载平衡,还轻易遭到进击,如:网站垂纶。假如你有什么看法,迎接留言。

    原文作者:FrontEndJie
    原文地址: https://segmentfault.com/a/1190000017389763
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞