Node.js如何获取以前的网址

问题描述 投票:1回答:2

我想获取以前的URL,例如在[[all我的/admin路由中,我打开了一个表单,管理员需要重新输入密码才能重定向到他请求的路由,但是问题出在我验证了他的密码,然后尝试将他重定向到他最初请求的路由,我不再有该路由,它已经丢失。例如,管理员请求/ admin / register,出现一个表单发布到validate-password,然后如果发现密码匹配(输入正确的密码),它将把用户重定向到他曾经请求的路由,但是我不这样做不知道如何获得他要求的初始路线

router.all('/admin/*', isAdmin, (req, res, next) => { res.render('validatePassword', {message: 'Please re-enter your password to get access to ' + req.originalUrl}); // next(); }); router.get('/admin/register', (req, res) => { res.render('register', {message: req.flash('message'), role_id: req.user.role_id}) }); // Validate password, admin re-enter password to get access to /admin routes router.post('/validate-password', async (req, res, next) => { const password = req.body.password; const match = await passwordController.comparePassword(password, req.user.password); console.log(password); if (match) { // return res.redirect('/' +); HOW DO I REDIRECT HERE return next(); } else { // return res.render('changePassword', {role_id: req.user.role_id}); return res.render('validatePassword', {message: 'Wrong password'}); } });
javascript node.js express routes express-session
2个回答
-1
投票
这里:

-1
投票
这是您使用Cookie或服务器端会话(也使用Cookie)的目的。您只需对用户进行一次身份验证,设置一个cookie,然后在该浏览器发出的将来请求中,该cookie将随每个请求一起发送,然后您可以检查该cookie以查看其是否经过身份验证,然后确定它们是或不是。不得基于此做。这就是网络上几乎所有使用登录名的网站的工作方式。
© www.soinside.com 2019 - 2024. All rights reserved.