文档章节

Express+Nodejs 下的登录拦截实现

WolfX
 WolfX
发布于 2016/04/20 09:42
字数 225
阅读 245
收藏 2

原来一直不知道怎么在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();
});

经过测试,成功了

本文转载自:http://cnodejs.org/topic/512d8172df9e9fcc58333c73

共有 人打赏支持
WolfX

WolfX

粉丝 52
博文 246
码字总数 31477
作品 0
南京
技术主管
私信 提问
Struts2重新学习之自定义拦截器(判断用户是否是登录状态)

拦截器   一:1:概念:Interceptor拦截器类似于我们学习过的过滤器,是可以再action执行前后执行的代码。是web开发时,常用的技术。比如,权限控制,日志记录。     2:多个拦截器Int...

无信不立
2014/07/17
0
0
webpack reactjs es6

http://news.chinaunix.net/opensource/2015/0625/3247608.shtml https://github.com/petehunt/webpack-howto reactjs+ express+nodejs https://github.com/mhart/react-server-routing-exam......

bytebear
2015/10/14
156
0
拦截器

一 概述 1 Struts2是框架,封装了很多功能,Struts2里面封装的功能都是在拦截器里面 2 Struts2里面封装了很多的功能,有很多拦截器,不是每次这些拦截器都执行,每次执行默认拦截器 3 Struts...

Bbigbug
2017/10/20
0
0
SpringMVC处理器拦截器介绍及应用

常见应用场景 1、日志记录:记录请求信息的日志,以便进行信息监控、信息统计、计算PV(Page View)等。 2、权限检查:如登录检测,进入处理器检测检测是否登录,如果没有直接返回到登录页面...

楠木楠
2016/12/13
13
0
SpringMVC拦截器(实现登录验证拦截器)

SpringMVC拦截器(实现登录验证拦截器) lenglingx的个人页面2017-11-281 阅读 springmvc登录验证 本例实现登陆时的验证拦截,采用SpringMVC拦截器来实现 核心代码 首先是index.jsp,显示链接...

lenglingx的个人页面
2017/11/28
0
0

没有更多内容

加载失败,请刷新页面

加载更多

最重要的是做什么,而不是怎么做。

最重要的是做什么,而不是怎么做。 做什么是战略,怎么做是战术。将军下令说,天黑前拿下这座山头,这是战略。手下的士兵可以不知道为什么要拿下这座山头,还非得是天黑之前,但士兵必须知道...

我是菜鸟我骄傲
今天
1
0
w, vmstat, top, sar, nload命令查看系统状态信息

w/uptime 查看系统负载 cat /proc/cpuinfo 查看cpu核数 vmstat 监控系统状态,用法 vmstat 1,关键的几列: r, b, swpd, si, so, bi, bo, us, wa top 查看进程使用资源情况 top -c 显示详细的...

野雪球
今天
2
0
小白创建一个spring boot项目

进入 https://start.spring.io/

lilugirl
今天
3
0
Alibaba Java诊断利器Arthas实践--使用redefine排查应用奇怪的日志来源

背景 随着应用越来越复杂,依赖越来越多,日志系统越来越混乱,有时会出现一些奇怪的日志,比如: [] [] [] No credential found 那么怎样排查这些奇怪的日志从哪里打印出来的呢?因为搞不清...

hengyunabc
今天
2
0
home hosts

home hosts lwk@qwfys:~$ cat /etc/hosts127.0.0.1 localhost127.0.1.1 qwfys192.168.56.101vm600.qwfys.com39.108.212.91alpha1.ppy.com39.108.117.122alpha2.p......

qwfys
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部