From 741870d9ecf94d63a9c08e923a80f70f04812b03 Mon Sep 17 00:00:00 2001 From: houzhongjian <houzhongyi@126.com> Date: 星期四, 06 三月 2025 15:51:38 +0800 Subject: [PATCH] 增加错误信息捕获 --- iailab-plat-sdk/src/main/java/com/iailab/sdk/auth/client/IailabAuthClient.java | 35 ++++++++++++++++++++--------------- 1 files changed, 20 insertions(+), 15 deletions(-) diff --git a/iailab-plat-sdk/src/main/java/com/iailab/sdk/auth/client/IailabAuthClient.java b/iailab-plat-sdk/src/main/java/com/iailab/sdk/auth/client/IailabAuthClient.java index 388ff67..c964605 100644 --- a/iailab-plat-sdk/src/main/java/com/iailab/sdk/auth/client/IailabAuthClient.java +++ b/iailab-plat-sdk/src/main/java/com/iailab/sdk/auth/client/IailabAuthClient.java @@ -1,9 +1,8 @@ package com.iailab.sdk.auth.client; -import com.fasterxml.jackson.databind.ObjectMapper; import com.iailab.sdk.auth.client.dto.TokenDTO; -import com.iailab.sdk.auth.client.vo.AuthLoginReqVO; import com.iailab.sdk.auth.config.AuthProperties; +import com.iailab.sdk.auth.constants.ErrorCodeConstants; import org.springframework.core.ParameterizedTypeReference; import org.springframework.http.*; import org.springframework.stereotype.Component; @@ -16,9 +15,7 @@ import java.nio.charset.StandardCharsets; import java.util.*; -import static com.iailab.framework.common.exception.enums.GlobalErrorCodeConstants.BAD_REQUEST; import static com.iailab.framework.common.exception.util.ServiceExceptionUtil.exception; -import static com.iailab.sdk.auth.enums.ErrorCodeConstants.*; /** * @author Houzhongjian @@ -72,13 +69,22 @@ new HttpEntity<>(headers), new ParameterizedTypeReference<Map<String, Object>>() { }); - Map<String, Object> authMap = exchange.getBody(); - if(AUTH_BAD_CREDENTIALS.getCode().equals(authMap.get("code"))) { - throw exception(AUTH_BAD_CREDENTIALS); - } else if(AUTH_LOGIN_BAD_CREDENTIALS.getCode().equals(authMap.get("code"))) { - throw exception(AUTH_LOGIN_BAD_CREDENTIALS); - } Assert.isTrue(exchange.getStatusCode().is2xxSuccessful(), "响应必须是 200 成功"); + Map<String, Object> authMap = exchange.getBody(); + Object code = authMap.get("code"); + if(ErrorCodeConstants.AUTH_BAD_CREDENTIALS.getCode().equals(code)) { + throw exception(ErrorCodeConstants.AUTH_BAD_CREDENTIALS); + } else if(ErrorCodeConstants.AUTH_LOGIN_BAD_CREDENTIALS.getCode().equals(code)) { + throw exception(ErrorCodeConstants.AUTH_LOGIN_BAD_CREDENTIALS); + } else if(ErrorCodeConstants.OAUTH2_CLIENT_REDIRECT_URI_NOT_MATCH.getCode().equals(code)) { + throw exception(ErrorCodeConstants.OAUTH2_CLIENT_REDIRECT_URI_NOT_MATCH); + } else if(ErrorCodeConstants.OAUTH2_CLIENT_CLIENT_SECRET_ERROR.getCode().equals(code)) { + throw exception(ErrorCodeConstants.OAUTH2_CLIENT_CLIENT_SECRET_ERROR); + } else if(ErrorCodeConstants.OAUTH2_CLIENT_NOT_EXISTS.getCode().equals(code)) { + throw exception(ErrorCodeConstants.OAUTH2_CLIENT_NOT_EXISTS); + } else if(ErrorCodeConstants.OAUTH2_CLIENT_DISABLE.getCode().equals(code)) { + throw exception(ErrorCodeConstants.OAUTH2_CLIENT_DISABLE); + } accessToken = authMap.get("access_token").toString(); refreshToken = authMap.get("refresh_token").toString(); expireTime = Long.valueOf(authMap.get("expires_time").toString()); @@ -107,7 +113,7 @@ if (code == 401) { authenticate(); } else { - throw exception(AUTH_REFRESH_TOKEN_ERROR); + throw exception(ErrorCodeConstants.AUTH_REFRESH_TOKEN_ERROR); } } else { accessToken = authMap.get("access_token").toString(); @@ -131,10 +137,9 @@ System.out.println(response); TokenDTO authTokenDTO = new TokenDTO(); Map<String, Object> authMap = (Map<String, Object>)response.getBody(); - Map<String, Object> tokenData = (Map<String, Object>)authMap.get("data"); - authTokenDTO.setAccessToken(tokenData.get("accessToken").toString()); - authTokenDTO.setRefreshToken(tokenData.get("refreshToken").toString()); - authTokenDTO.setExpiresTime(Long.valueOf(tokenData.get("expiresTime").toString())); + authTokenDTO.setAccessToken(authMap.get("access_token").toString()); + authTokenDTO.setRefreshToken(authMap.get("refresh_token").toString()); + authTokenDTO.setExpiresTime(Long.valueOf(authMap.get("expires_time").toString())); return authTokenDTO; } -- Gitblit v1.9.3