Express+Nodejs 下的登录拦截实现代码
更新时间:2017年07月01日 16:20:16 作者:duyinghua
本篇文章主要介绍了Express+Nodejs 下的登录拦截实现代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
原来一直不知道怎么在Express+Nodejs里面添加类似于Struts2的拦截器(因为要使用登录拦截的功能)。
以前一直以为在router这块添加类似一下的转移路由控制权代码的(每个都加很麻烦)
app.get('/show', controllers.checkLogin);//登录验证 app.get('/show', controllers.showList);//实际跳转
又或者是像某些项目里面给每个controller的方法里面加以下这种验证(太繁琐了)
if (!req.session.user) { return res.redirect("/login"); }
最近翻到之前使用session的代码片段,突然有如茅塞顿开啊!!
//session app.use(function (req, res, next) { var err = req.flash('error'); var success = req.flash('success'); res.locals({ user:req.session.user, navSide:req.session.navSide, error:err.length ? err : null, success:success.length ? success : null }); next(); });
这尼玛不就是个拦截器吗~囧~
稍加改造
//登录拦截器 app.use(function (req, res, next) { var url = req.originalUrl; if (url != "/login" && !req.session.user) { return res.redirect("/login"); } next(); });
经过测试,成功了
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
您可能感兴趣的文章:
- nodejs中Express与Koa2对比分析
- 使用nodejs+express实现简单的文件上传功能
- nodejs使用express获取get和post传值及session验证的方法
- Nodejs+express+ejs简单使用实例代码
- 详解nodejs中express搭建权限管理系统
- nodejs对express中next函数的一些理解
- nodejs 图解express+supervisor+ejs的用法(推荐)
- 基于nodejs+express4.X实现文件下载的实例代码
- 详解nodejs的express如何自动生成项目框架
- nodeJS(express4.x)+vue(vue-cli)构建前后端分离实例(带跨域)
- nodejs+express搭建多人聊天室步骤
相关文章
Node.js实现http请求服务与Mysql数据库操作方法详解
这篇文章主要介绍了Node.js实现http请求服务与Mysql数据库操作方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧2022-10-10
最新评论