0

我想实现一个类似于 asp.net mvc 的 allowanonymous 属性的身份验证逻辑。

在节点应用程序中,我有这样的代码

var authChecker = function(req, res, next){
if (req.session.user 
    && req.session.user.loggedIn) {
    next();
}
else {
    res.redirect('/login');
}   
}
app.use(authChecker);

//this path should be allowed for anonymous access
app.get('/public', function(req, res) { 

});

//this path is checked globally
app.get('/private', function(req, res) { 

});

但我不知道如何为我想要在没有登录的情况下访问的路径创建一个过滤器......

我怎样才能做到这一点?

4

1 回答 1

0

而不是全局useing authChecker,只需在您要保护的每条路由中使用它。

var authChecker = function(req, res, next){
if (req.session.user 
    && req.session.user.loggedIn) {
    next();
}
else {
    res.redirect('/login');
}   
}


//this path should be allowed for anonymous access
app.get('/public', function(req, res) { 

});

//this path is checked globally
app.get('/private', authChecker, function(req, res) { 

});
于 2013-10-30T20:21:37.043 回答