原理
登录成功后,保存登录信息到文件/数据库种,同时保存创建时间和过期时间,下次验证的时候取出来做验证安装express-session
使用express-session中间件来进行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:"用户未登录,请重新登录" }) }) } }
总结:后端存储验证信息的方式,如果用户过大,需要做负载均衡,还容易受到攻击,如:网站钓鱼。如果你有什么见解,欢迎留言。
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/100089.html
摘要:使用,可参考执行退出命令,只要设置,即可。下节主要实现注册时的邮件验证保存登录状态异常处理,同步异步操作全栈工程技术新群上一篇公司项目实践下一篇待续 一、前言 ⋅⋅⋅书接上回,我们搭建了WEB服务端路由、模板等功能,完成了register 通过ajax与后端的通信,今天主要完成数据与mongodb的存取,实现注册 / 登录 / 退出功能 ⋅⋅⋅DEMO GIT https://gi...
摘要:一系统介绍海纳企业网站管理系统是海纳网络工作室专业为企业建站而开发的一款网站程序。是企业建站的绝佳选择系统三大特色全静态全站生成静态页面。够简单拥有完善后台管理系统,所有内容均可在后台进行更新。登录会话产生登陆成功时记录对字段进行验证。 〇.前言 本文为笃行日常工作记录,这篇审计文章,也是在2014年国庆期间写的,比较简单。意在展现一个完整的开源CMS代码手工审计的过程,从未发表过,三...
摘要:系统从认证中心得到校验成功的结果后,则可以认为用户已登录。认证中心发现用户未登录没有,将用户引导至登录界面。用户提交登录信息到认证中心。 简单登录 登录流程 首先让我们分析一下一个简单的登录是怎么实现的。 一个简单的登录流程 用户输入url访问站点,接受用户请求后判断用户是否已经登录,若未登录则跳转到登录页面 用户访问登录页面,填写并提交登录表单 web应用对登录表单进行验证,若...
阅读 2076·2021-11-17 09:33
阅读 2616·2021-11-12 10:36
阅读 3218·2021-09-27 13:47
阅读 628·2021-09-22 15:10
阅读 3317·2021-09-09 11:51
阅读 1176·2021-08-25 09:38
阅读 2570·2019-08-30 15:55
阅读 2481·2019-08-30 15:53