From cb119d4f70d8f3b96db61c80cd28210eb2051ee7 Mon Sep 17 00:00:00 2001 From: Parker Date: Sun, 27 Sep 2020 00:22:09 +0800 Subject: [PATCH] =?UTF-8?q?token=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/org/opsli/core/msg/TokenMsg.java | 2 +- .../org/opsli/core/security/shiro/filter/OAuth2Filter.java | 6 ++++-- .../org/opsli/core/security/shiro/realm/OAuth2Realm.java | 5 +++-- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/opsli-base-support/opsli-core/src/main/java/org/opsli/core/msg/TokenMsg.java b/opsli-base-support/opsli-core/src/main/java/org/opsli/core/msg/TokenMsg.java index 44864ed3..f1ff0c83 100644 --- a/opsli-base-support/opsli-core/src/main/java/org/opsli/core/msg/TokenMsg.java +++ b/opsli-base-support/opsli-core/src/main/java/org/opsli/core/msg/TokenMsg.java @@ -15,7 +15,7 @@ public enum TokenMsg implements BaseMsg { * Token */ EXCEPTION_TOKEN_CREATE_ERROR(12000,"生成Token失败"), - EXCEPTION_TOKEN_LOSE_EFFICACY(12001,"Token失效,请重新登录"), + EXCEPTION_TOKEN_LOSE_EFFICACY(401,"Token失效,请重新登录"), /** diff --git a/opsli-base-support/opsli-core/src/main/java/org/opsli/core/security/shiro/filter/OAuth2Filter.java b/opsli-base-support/opsli-core/src/main/java/org/opsli/core/security/shiro/filter/OAuth2Filter.java index 64120e2e..00987986 100644 --- a/opsli-base-support/opsli-core/src/main/java/org/opsli/core/security/shiro/filter/OAuth2Filter.java +++ b/opsli-base-support/opsli-core/src/main/java/org/opsli/core/security/shiro/filter/OAuth2Filter.java @@ -5,6 +5,7 @@ import org.apache.shiro.authc.AuthenticationException; import org.apache.shiro.authc.AuthenticationToken; import org.apache.shiro.web.filter.authc.AuthenticatingFilter; import org.opsli.api.base.result.ResultVo; +import org.opsli.core.msg.TokenMsg; import org.opsli.core.security.shiro.token.OAuth2Token; import org.opsli.core.utils.UserTokenUtil; import org.springframework.web.bind.annotation.RequestMethod; @@ -60,8 +61,9 @@ public class OAuth2Filter extends AuthenticatingFilter { httpResponse.setHeader("Access-Control-Allow-Credentials", "true"); httpResponse.setHeader("Access-Control-Allow-Origin", httpServletRequest.getHeader("Origin")); httpResponse.setContentType("application/json; charset=utf-8"); - - ResultVo error = ResultVo.error(401, "令牌失效"); + // 401 Token失效,请重新登录 + ResultVo error = ResultVo.error(TokenMsg.EXCEPTION_TOKEN_LOSE_EFFICACY.getCode(), + TokenMsg.EXCEPTION_TOKEN_LOSE_EFFICACY.getMessage()); httpResponse.getWriter().print(error.toJsonStr()); return false; } diff --git a/opsli-base-support/opsli-core/src/main/java/org/opsli/core/security/shiro/realm/OAuth2Realm.java b/opsli-base-support/opsli-core/src/main/java/org/opsli/core/security/shiro/realm/OAuth2Realm.java index b082a03d..2aa2162e 100644 --- a/opsli-base-support/opsli-core/src/main/java/org/opsli/core/security/shiro/realm/OAuth2Realm.java +++ b/opsli-base-support/opsli-core/src/main/java/org/opsli/core/security/shiro/realm/OAuth2Realm.java @@ -6,6 +6,7 @@ import org.apache.shiro.authz.SimpleAuthorizationInfo; import org.apache.shiro.realm.AuthorizingRealm; import org.apache.shiro.subject.PrincipalCollection; import org.opsli.api.wrapper.system.user.UserModel; +import org.opsli.common.exception.TokenException; import org.opsli.core.msg.TokenMsg; import org.opsli.core.security.shiro.token.OAuth2Token; import org.opsli.core.utils.UserTokenUtil; @@ -63,8 +64,8 @@ public class OAuth2Realm extends AuthorizingRealm { boolean verify = UserTokenUtil.verify(accessToken); if(!verify){ // token失效,请重新登录 - throw new IncorrectCredentialsException( - TokenMsg.EXCEPTION_TOKEN_LOSE_EFFICACY.getMessage()); + throw new TokenException( + TokenMsg.EXCEPTION_TOKEN_LOSE_EFFICACY); } // 2. 查询 用户信息