重新登录 页面跳转到之前页面的一种解决办法
来源:互联网 发布:unity3d 5.0 入门教程 编辑:程序博客网 时间:2024/05/27 16:40
要实现超时用户被暂时注销,在首页登录自动跳转到之前页面功能。
基本实现思路是
1.用req.query.ReturnUrl获取此时页面的ReturnUrl
2.通过隐藏表格的形式将此参数传入到login.html页面中
3.在登录页面post请求中,用req.body.redirectUrl重新获取表格中url内容,并执行有无此redirectUrl判断,从而绘制不同页面。
判断是否登录代码
var isAuthenticated = function(req, res, next){ if(req.isAuthenticated()) return next(); res.redirect('/login?ReturnUrl=' + encodeURIComponent("/pages" + req.url));};
在login.html中添加一个隐藏表格来获取参数
input type="hidden" name="redirectUrl" value="{{url}}"
在登录页面将参数传入
router.get('/login', function(req, res, next){ res.render('login', {url: req.query.ReturnUrl});});
点击登录按钮时
在post请求中做一个判断,根据是否有req.body.redirectUrl跳转不同的页面
app.post('/login', function(req, res, next) { var redirectUrl = req.body.redirectUrl; passport.authenticate('local', function(err, user, info) { if (err) { return next(err) } if (!user) { return res.render('login', { message: info.message }) } req.login(user, function(err) { if (err) { return next(err); } return redirectUrl ? res.redirect(redirectUrl) : res.redirect('/'); }); })(req, res, next); });
至此便完成了超时登录自动跳转到之前页面的功能。
0 0
- 重新登录 页面跳转到之前页面的一种解决办法
- 登录后跳转之前页面
- 让Drupal在登录后自动跳转到登录之前的页面
- 登录之后跳转到登录之前的页面 going to previous page after login
- 怎么实现登录之后跳转到登录之前的页面?SpringMVC+Freemarker
- Android跳转到系统设置页面再跳转别的页面不保存系统页面的一种解决办法
- web开发,登录后跳转到之前页面
- 重新登录,页面嵌套问题的解决办法
- iframe请求失效重新登录后直接跳转到请求内容页面的解决方案
- 使用filter使session失效的用户,重新跳转到登录页面
- 用户登录后,跳转到另一个action页面,但是刷新页面,会重新登录怎么办呀?
- 登录跳转到自己想要的页面
- 登录后跳转至之前访问页面
- jsp登录后跳转之前页面
- 登陆之后跳转到登陆之前浏览页面的实现
- login 跳转 到 tabbar 页面(登录界面的跳转)
- 实现登录成功后跳转到登录前的页面
- 登录后自动跳转到登录前的页面
- Java第十天
- linux--基本的bash shell命令
- VC维的物理意义
- Openjudge 8465 马走日
- 二叉树系列问题——求二叉树中最远节点的距离
- 重新登录 页面跳转到之前页面的一种解决办法
- C++primer plus第9-10章笔记
- iOS中OC调用js方法简述(一)
- 死锁: delete+insert不存在PK
- jQuery自定义插件
- PyQt5教程(十)——自定义控件
- android之文件存储路径问题
- 在TextView中添加超链接
- 【opencv的学习】播放avi视频和视频播放控制