Nodejs自定义成功登录后重定向页面
Nodejs custom successRedirect page after login
登录节点后,如何根据mysql用户行的值,在js中创建自定义的successRedirect页面?类似的东西:
passport.use(new LocalStrategy(
function(username, password, done) {
var strQuery = "SELECT * FROM users WHERE username='"+username+"' and password_text='"+password+"'";
connection.query( strQuery, function(err, users){
if (err) { return done(err); }
if (typeof users[0] == 'undefined' && users.length == 0) {
return done(null, false, { message: 'Incorrect username or password' });
}
if (password != users[0].password_text ) {
return done(null, false, { message: 'Incorrect password.' });
}
return done(null, users[0]);
});
}
));
passport.serializeUser(function(user, done) {
done(null, user.id);
});
passport.deserializeUser(function(id, done, ) {
var strQuery = "SELECT * FROM users WHERE id='"+id+"'";
connection.query( strQuery, function(err, users){
return done(null, users[0]);
});
});
app.post('/login',
passport.authenticate('local', { failureRedirect: '/login', failureFlash: true }),
function(req, res, next) {
if (req.user.userlevel > 3) { // Here is my problem I dont't know how get userlevel value
return res.redirect('/index1');
} else {
res.redirect('/index2');
}
});
我不知道为什么我的代码不起作用。。。userlevel
是users
表中的实列感谢您的任何建议
您的策略是对用户进行身份验证,然后将该用户发送到done回调。如果您找到的用户在返回时具有userlevel属性,那么您将能够像您所做的那样通过req.user.userlevel
访问它。
相关文章:
- 我尝试在登录脚本中使用ajax,但页面不会重定向
- 访问NeedLogin操作后不重定向到登录页面
- 登录后重定向,缓存页面问题-Javascript
- Framework7:登录重定向
- 在页面加载之前检查登录和重定向
- 如何在ASP.NET中创建重定向到登录页
- 意思是.js - 登录后重定向用户 - 在本地工作,但在部署时不起作用
- 登录尝试和重定向
- Laravel:在 ajax 请求的会话过期后重定向到登录
- 用户使用铁路由器登录后如何重定向
- 从登录页重定向到主页
- 登录后PHP登录脚本重定向不起作用
- 如何基于电子邮件地址域重定向到电子邮件登录页面
- Facebook登录重定向问题
- 如果用户尚未登录Angular JS,请重定向至登录页面
- 重定向“如果确认了电子邮件,则将用户重定向到登录页”
- 防止Angular网站上未经授权的用户在重定向到登录之前看到网站的最佳方式
- 如果未处于登录状态,如何重定向到登录页面,登录后重定向到原始页面
- AngularFire,登录身份验证和重定向并不完全有效
- 从angularjs重定向登录页面到欢迎页面