From f721ee13dc5f95f607bb25b09f73cae6a7123ed9 Mon Sep 17 00:00:00 2001 From: DESKTOP-71BH0QO\L、ming <172680469@qq.com> Date: 星期六, 17 四月 2021 17:56:59 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- springcloud_k8s_panzhihuazhihuishequ/auth/src/main/java/com/panzhihua/auth/handel/UserLoginFailureHandler.java | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 44 insertions(+), 0 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/auth/src/main/java/com/panzhihua/auth/handel/UserLoginFailureHandler.java b/springcloud_k8s_panzhihuazhihuishequ/auth/src/main/java/com/panzhihua/auth/handel/UserLoginFailureHandler.java new file mode 100644 index 0000000..7bc3abe --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/auth/src/main/java/com/panzhihua/auth/handel/UserLoginFailureHandler.java @@ -0,0 +1,44 @@ +package com.panzhihua.auth.handel; + +import com.panzhihua.common.utlis.ResultUtil; +import com.panzhihua.common.model.vos.R; +import lombok.extern.slf4j.Slf4j; +import org.springframework.security.authentication.BadCredentialsException; +import org.springframework.security.authentication.LockedException; +import org.springframework.security.core.AuthenticationException; +import org.springframework.security.core.userdetails.UsernameNotFoundException; +import org.springframework.security.web.authentication.AuthenticationFailureHandler; +import org.springframework.stereotype.Component; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +/** + * @program: springcloud_k8s_panzhihuazhihuishequ + * @description: 登录失败 + * @author: huang.hongfa weixin hhf9596 qq 959656820 + * @create: 2020-11-24 16:02 + **/ +@Slf4j +@Component +public class UserLoginFailureHandler implements AuthenticationFailureHandler { + /** + * 登录失败返回结果 + * @Author youcong + */ + @Override + public void onAuthenticationFailure(HttpServletRequest request, HttpServletResponse response, AuthenticationException exception){ + log.info("登录失败"); + // 这些对于操作的处理类可以根据不同异常进行不同处理 + if (exception instanceof UsernameNotFoundException){ + ResultUtil.responseJson(response, R.fail("该账号不存在")); + } + if (exception instanceof LockedException){ + ResultUtil.responseJson(response,R.fail("用户被冻结")); + } + if (exception instanceof BadCredentialsException){ + ResultUtil.responseJson(response,R.fail("密码错误")); + } + ResultUtil.responseJson(response,R.fail("登录失败")); + } +} -- Gitblit v1.7.1