我有一个基于快递的项目,并具有基于护照的必需身份验证。
后台是用作静态文件的angularjs应用程序。
我的身份验证代码完全基于https://github.com/jaredhanson/passport-local/blob/master/examples/express3-no-connect-flash/app.js
如果您未通过身份验证,则不提供该应用程序。我尝试通过在/ admin路由上添加sureAuthenticated来尝试,但它使路由无法正常工作(404)。一旦删除,请确保已提供/ admin的身份验证。
app.use(express.static(path.join(__dirname, 'public')));
app.use('/admin', ensureAuthenticated, express.static(path.join(__dirname, 'admin')));
//serve routes
app.use(app.router);
公用文件夹包含登录页面。
我怎样才能做到这一点?
您可以使用中间件检查路由,如果它们未登录并进入管理页面,则将其重定向,例如(未测试):
app.use(function(req, res, next) {
if (req.user == null && req.path.indexOf('/admin') === 0)
{
res.redirect('/login');
}
next();
});
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句