全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Laravel 5.4重新登录实现跳转到登录前页面的原理和方法

前言

本文主要给大家介绍的是关于Laravel5.4重新登录跳转到登录前页面的相关内容,分享出来供大家参考学习,下面话不多说,来一起看看详细的介绍:

一、应用场景:

用户登陆后存在过期时间,超时用户需重新登录。例:当用户在/user/2 页面,登陆过期后跳转到登陆页面,登陆后用户还应在/user/2而不是home/index。

二、实现原理

在判断用户过期后,存储用户当前的url地址到session中,下次登陆后跳转到此url地址。

三、laravel中的具体实现

路由中间件(判断登陆状态) 这里以cookie是否过期判断用户登陆状态,中间件只判断登陆相关判断和执行,不做多余操作(登录时我使用cookie的值$token作为session的键存储),代码如下:

public function handle($request, Closure $next) {
 //判断cookie是否存在
 if ($token = Cookie::get('token')) {
 //判断session信息,保持状态一致
 if ($request->session()->get($token)) {
  return $next($request);
 }
 }

 //获取当前url,跳转到登陆页
 $returnUrl = urlencode($request->getRequestUri());

 return redirect('/login?reurl=' . $returnUrl); }

登陆端(处理与页面交互以及跳转逻辑)这里做的是跳转到登陆页,这个可以在中间件实现,只有这一句,with实现的是将reurl闪存,提供前端使用。

return redirect('/')->with('reurl', $returnUrl); 

页面端(判断闪存信息) 判断闪存的信息,这里分ajax和submit登陆,submit应该很少了,ajax下获取reurl,然后后端登陆判断reurl。

 @if (session('reurl'))
  <input type="hidden" name="reurl" value="{{ session('reurl') }}"/>
 @endif 

登陆(登陆逻辑) 省略了判断用户账户密码,和存储cookie,session的逻辑,最后前端获取url,location.href = 'url',跳转到原url地址。

$reurl = $request->get('reurl');

$url = empty($reurl) ? '/home/index' : $reurl;

return response($url);

注:本文只贴出了实现重新登录的相关代码,实际代码请按照实际业务做对应修改。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对的支持。


# laravel跳转指定页面  # laravel  # 页面跳转  # laravel5.4  # 登录  # laravel 解决强制跳转 https的问题  # Laravel重定向  # a链接跳转  # 控制器跳转示例  # Laravel 微信小程序后端实现用户登录的示例代码  # laravel利用中间件防止未登录用户直接访问后台的方法  # Laravel 自带的Auth验证登录方法  # Laravel实现登录跳转功能  # 的是  # 跳转到  # 跳转  # 用户登陆  # 期后  # 这一  # 相关内容  # 给大家  # 不做  # 应在  # 这篇文章  # 谢谢大家  # 多说  # 到此  # 贴出  # 是否存在  # 而不是  # 后端  # 下次  # 有疑问 


相关文章: 如何注册花生壳免费域名并搭建个人网站?  赚钱网站制作软件,建一个网站怎样才能赚钱?是如何盈利的?  如何选择CMS系统实现快速建站与SEO优化?  高端智能建站公司优选:品牌定制与SEO优化一站式服务  香港服务器租用费用高吗?如何避免常见误区?  如何高效利用200m空间完成建站?  c# 服务器GC和工作站GC的区别和设置  如何快速生成ASP一键建站模板并优化安全性?  如何用y主机助手快速搭建网站?  成都响应式网站开发,dw怎么把手机适应页面变成网页?  网站视频怎么制作,哪个网站可以免费收看好莱坞经典大片?  微网站制作教程,不会写代码,不会编程,怎么样建自己的网站?  公司网站制作需要多少钱,找人做公司网站需要多少钱?  建站主机系统SEO优化与智能配置核心关键词操作指南  如何设计高效校园网站?  如何快速完成中国万网建站详细流程?  宝塔新建站点报错如何解决?  长沙做网站要多少钱,长沙国安网络怎么样?  C#怎么创建控制台应用 C# Console App项目创建方法  如何在Windows服务器上快速搭建网站?  如何在阿里云购买域名并搭建网站?  如何在西部数码注册域名并快速搭建网站?  建站之星备案流程有哪些注意事项?  保定网站制作方案定制,保定招聘的渠道有哪些?找工作的人一般都去哪里看招聘信息?  建站主机类型有哪些?如何正确选型  寿县云建站:智能SEO优化与多行业模板快速上线指南  安徽网站建设与外贸建站服务专业定制方案  定制建站流程解析:需求评估与SEO优化功能开发指南  javascript中的try catch异常捕获机制用法分析  香港服务器建站指南:免备案优势与SEO优化技巧全解析  实现虚拟支付需哪些建站技术支撑?  香港网站服务器数量如何影响SEO优化效果?  宝塔建站无法访问?如何排查配置与端口问题?  宝塔新建站点为何无法访问?如何排查?  淘宝制作网站有哪些,淘宝网官网主页?  c# Task.Yield 的作用是什么 它和Task.Delay(1)有区别吗  高性能网站服务器部署指南:稳定运行与安全配置优化方案  如何选择靠谱的建站公司加盟品牌?  如何在香港服务器上快速搭建免备案网站?  香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化  湖北网站制作公司有哪些,湖北清能集团官网?  *服务器网站为何频现安全漏洞?  如何设置并定期更换建站之星安全管理员密码?  唐山网站制作公司有哪些,唐山找工作哪个网站最靠谱?  招贴海报怎么做,什么是海报招贴?  建站主机如何安装配置?新手必看操作指南  制作网站的模板软件,网站怎么建设?  网站网页制作电话怎么打,怎样安装和使用钉钉软件免费打电话?  建站之星导航如何优化提升用户体验?  如何挑选优质建站一级代理提升网站排名? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。