我正在使用nodeJs Express和Passport-local开发旅行网络应用程序。 使用以下功能来保护我的路线。
如何重定向到原始请求网址
function isLoogedin(req, resp, next){
If(isAuthenticated()){
Next()
}else {
resp.redirect('/login')
}
}
答案 0 :(得分:0)
谢谢大家,我通过在会话中保存请求的路径并将重定向设置为然后从会话中删除来找到解决方案。
function isLoggedIn(req, resp, next) {if(req.isAuthenticated()){next()}else{req.session.returnTo =req.path; resp.redirect("/login")}}
在登录路由器中使用如下
route.post(passport.authenticate('mylonginstrategy'), (req, resp) { resp.redirect(req.session.returnTo || '/') delete req.session.returnTo;}