2015-04-05 305 views
-3

嘿家伙即时尝试使我的管理页面关闭所有用户的限制,除了我命名约翰。我在我的app.js文件是如何限制管理员页面node.js

app.get('/admin',requireLogin, function(req, res){ 

    res.render('admin', { 
    title: 'Admin'}); 
    }); 

    function requireLogin (req, res, next) { 
    if (req.user.username ==='john') { 
     next(); 
    } else {  
     res.redirect('/login'); 
    } 
    }; 

的问题是,它只是不工作,我仍然可以不管它是谁,我登录,

+0

问题是..? – GolezTrol 2015-04-05 23:13:35

+0

编辑它,问题是,我仍然可以访问该页面,而不是用户约翰 – jonathan 2015-04-05 23:26:24

回答

0

显然访问该页面,你只需用匹配这就是为什么用户“john”只能登录的用户名。您最好尝试在用户架构中添加一个access_level字段,以使其更加灵活。

app.get('/admin',requireLogin, function(req, res){ 

    res.render('admin', { 
    title: 'Admin'}); 
    }); 
}); 

function requireLogin (req, res, next) { 
    if (req.user.accesslevel ==='admin') { 
     next(); 
    } else {  
     res.redirect('/login'); 
    } 
};