javascript - Passport JS - One Login Form - Redirect to Different URI's Depended on User Role -
i using passport js handle authentication , express js handle routing.
currently, have login route on success go /teacher
uri. (as shown below).
app.post('/login', passport.authenticate('local-login', { successredirect: '/teacher', // redirect teacher profile section failureredirect: '/login', // redirect login page if there error failureflash: true // allow flash messages }));
i have 3 main parts of application, teacher, parent, student.
i have built teacher side of application looking build student , parent,
in passport js session have req.user.group
tells me if user teacher, parent or student.
is there way of redirecting different locations dependent on type of user logs onto application.
e.g if parent log on go /parent
, student /student
thank you.
app.post('/login', passport.authenticate('local-login', function(err, user, info){ var error = err || info; if (error) return res.status(401).json(error); if (!user) return res.status(404).json({message: 'something went wrong, please try again.'}); else { if(req.user.group==='teacher'){ res.redirect('/teacher'); } else if(req.user.group==='parent'){ res.redirect('/parent'); } else{ res.redirect('/student'); } } }));
Comments
Post a Comment