若依框架学习(九)关于登录token过期如何处理

在第一节的部分我们也知道登录的流程,但当后台发现redis缓存的登陆实体类过期了,是怎么处理并且怎么给前端发送消息?

其实SpringSecurity有一个config配置SecurityConfig类,继承于WebSecurityConfigurerAdapter

其中重写了configure()方法,用来自定义过滤和拦截处理
在这里插入图片描述
红线框就是处理登录token过期,实质上认证失败处理类,只不过token过期是认证失败的一种情况。
我们看下这个类做了什么?
我们点击紫色的属性
在这里插入图片描述
通过这个注入的实现类看看

@Component
public class AuthenticationEntryPointImpl implements AuthenticationEntryPoint, Serializable
{
    private static final long serialVersionUID = -8970718410437077606L;

    @Override
    public void commence(HttpServletRequest request, HttpServletResponse response, AuthenticationException e)
            throws IOException
    {
        int code = HttpStatus.UNAUTHORIZED;
        String msg = StringUtils.format("请求访问:{},认证失败,无法访问系统资源", request.getRequestURI());
        ServletUtils.renderString(response, JSON.toJSONString(AjaxResult.error(code, msg)));
    }
}

当遇到认证失败情况,如token过期就会到这个方法,只要你把这个类放入到SpingSecurity的configure()方法中进行配置。
其中最后一句就是把返回给前端的AjaxResult封装起来,转换成JSON给前端。

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
若依框架token拦截功能是指在用户进行登录认证时,若依框架会自动生成一个token,并在后续请求中对该token进行拦截和验证。引用中提到,若依框架生成token的过程是先生成一个随机数作为redis key,然后将该随机数用于生成一个token,该token在生成后没有时效限制。当请求中包含该token时,若该token距离失效时间在10分钟以内(可配置),则若依框架会自动刷新token的有效期。 所以,若依框架token拦截功能可以帮助确保请求的有效性和安全性,防止未经授权的访问。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [05 【若依框架解读】登录认证JWTtoken验证机制](https://blog.csdn.net/kouryoushine/article/details/110780053)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *3* [前后端如何实现登录token拦截校验详解](https://download.csdn.net/download/weixin_38558660/13617543)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值