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

useグローバルにing するのではなく、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 に答える