我正在尝试为我的角度应用程序实现客户端身份验证,并且我遇到了一些问题,试图为新来者定义初始访问级别。
app.use(express.static(path.join(__dirname, '../app')));
app.get('/', function(req, res){
console.log('inside auth');
var role = routingConfig.userRoles.public,
username = '';
if(req.user) {
role = req.user.role;
username = req.user.username;
}
res.cookie('user', JSON.stringify({
'username': username,
'role': role
}));
res.render('index');
});
代码来自我的express node server.js文件
'作用'是我定义用户访问级别的地方(匿名'角色'无法访问需要登录的页面)。我正在尝试定义默认角色'对于第一次访问该页面的人,但似乎我没有进入app.get(' /')因为我在第一次加载页面时看不到控制台日志。我的假设是因为我在任何身份验证发生之前都在提供静态文件,但是我无法想出办法来解决这个问题。
帮我plz =)
答案 0 :(得分:0)
如果您更改app.get和app.use的顺序,您应该能够达到您想要的效果。 记得在get方法(下一个)中指定第三个参数
app.get('/', function(req, res, next){
console.log('inside auth');
// put your logic here
// once you're done call next so static pages could be served
next()
});
app.use(express.static(path.join(__dirname, '../app')));