繁体   English   中英

使用纯JavaScript如何找到之前的URL进行登录? document.referrer 不适合我

[英]How do I find the previous URL for login using pure JavaScript? document.referrer is not working for me

我正在使用带有 pug 模板和纯 JavaScript 的 express,对于登录系统我想保存 URL 有人来到登录页面所以我可以在他们完成登录后将它们移回它,但是我找不到它。

我尝试使用 document.referrer 并将其放入隐藏的输入中以将其存储在哈巴狗模板中,它以错误消息响应说文档未定义,类型错误,当我呈现登录页面时。我需要定义一些东西还是为我下载一些模块以使用文档属性? 如果我不能那样做,我该怎么做?

这是我的路由器中的获取路由处理程序:

router.get('/login', function(req,res,next) {
  res.render('login', {backUrl: document.referrer});
}); 

谢谢!

您可以在 Express.js 中获取引荐来源网址:

req.get('Referrer')

如果你想在登录后重定向,你可以在你的登录 URL 中添加查询字符串,你可以在登录后重定向页面。

您可以在 URL 的末尾添加当前页面。

假设用户浏览“ /view-documents ”页面。 用户单击登录按钮后,将当前路径添加到登录 URL,如下所示:

/login?redirect=/查看文档

你可以像这样重定向:

router.get('/login', function(req,res,next) {
  res.redirect(req.query.redirect);
}); 

查询字符串教程

req.originalUrl

根据快递文件:

这个属性很像req.url; 但是,它保留了原始请求 URL,允许您出于内部路由目的自由重写 req.url

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM