Springboot + Security + Cas 实现用户登录成功后跳转回登录前的页面

57 篇文章 2 订阅
14 篇文章 0 订阅

按照之前的文章进行配置(Springboot + Security + Cas 整合 传送门:https://blog.csdn.net/W_Meng_H/article/details/86673630),每次用户登录总是返回首页,原因是拦截的是  login ,登录成功后,依然会执行 login 方法。

 

解决方案:

1、单机项目

我们可以在登陆之前,把用户每次访问的公共页面的 路径 存到项目的 session 中,用户登录成功之后,我们在session中获取用户登录前的路径即可。

登录前的路径存入session:

登录成功执行login方法,从session中获取路径,重定向到此页面即可:

使用完session,记得清除session!

这种方式适用于公共方法比较少的项目,如果项目有100多个页面,我们要怎么处理呢?可以使用AOP切面处理

 

2、分布式项目

第一种解决方式:同上,分布式的项目就是要解决共享session的问题,使用中间件redis即可。

另一种解决方式:使用 nginx 负载均衡的 ip_hash 算法。

 

3、前后端分离项目

cas登录后,处理好返回的接口方法即可,返回的JSON怎么设计需要根据各自项目的业务需求来。

 

 

 

如果大家有更好的方法,望指点!

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值