From 7f21361ab40aaccfd2dc3e6be3fd21b11c47c918 Mon Sep 17 00:00:00 2001 From: Cruyse <742557672@163.com> Date: Sat, 17 May 2025 12:30:16 +0800 Subject: [PATCH] =?UTF-8?q?=E9=87=8D=E5=BA=86=E7=83=AD=E7=BA=BF-=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E5=8A=A0=E8=A7=A3=E5=AF=86=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../febs/auth/configure/DecryptThirdTokenFilter.java | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/ruoyi-auth/src/main/java/cc/mrbird/febs/auth/configure/DecryptThirdTokenFilter.java b/ruoyi-auth/src/main/java/cc/mrbird/febs/auth/configure/DecryptThirdTokenFilter.java index feab76f..5cdaa17 100644 --- a/ruoyi-auth/src/main/java/cc/mrbird/febs/auth/configure/DecryptThirdTokenFilter.java +++ b/ruoyi-auth/src/main/java/cc/mrbird/febs/auth/configure/DecryptThirdTokenFilter.java @@ -81,8 +81,7 @@ public class DecryptThirdTokenFilter extends OncePerRequestFilter { // 使用支持body缓存的请求包装器 HeaderMapRequestWrapper requestWrapper = new HeaderMapRequestWrapper(request); String requestBody = requestWrapper.getRequestBody(); -// log.info("=== 最初请求体信息 ==="); -// log.info("Body: {}", requestBody); + log.info("=== 请求体信息 ===requestBody: {}", requestBody); // 非第三方获取token直接放行 String isThird = request.getHeader(IS_THIRD); // 判断是否第三方请求(满足任一条件即可) @@ -188,17 +187,21 @@ public class DecryptThirdTokenFilter extends OncePerRequestFilter { String key = entry.getKey(); // 获取键("header"或"body") String value = String.valueOf(entry.getValue()); // 获取对应值 transportRequest.getHeader().setCrc(key); - transportRequest.setBody(value); + tokenMap.put("token", value); + String tokenBody = gson.toJson(tokenMap); + transportRequest.setBody(encryptBody(tokenBody)); + log.info("=== 返回验证token(未加密redis) ===token: {}", value); } } else { String sourceType = "data_exchange_client"; String tokenValue = new String(Base64.encodeBase64URLSafe(DEFAULT_TOKEN_GENERATOR.generateKey()), US_ASCII); String tokenValueBase64 = Base64.encodeBase64String((sourceType + "_" + tokenValue).getBytes(StandardCharsets.UTF_8)); tokenMap.put("token", encryptBody(tokenValueBase64)); + log.info("=== 返回验证token(未加密mysql) ===token: {}", encryptBody(tokenValueBase64)); String tokenBody = gson.toJson(tokenMap); String crc = calculateSM3(tokenBody); String responseBody = encryptBody(tokenBody); - redisService.setCacheMapValue(user, crc, responseBody); + redisService.setCacheMapValue(user, crc, encryptBody(tokenValueBase64)); redisService.expire(user, 24 * 60 * 60); transportRequest.getHeader().setCrc(crc); transportRequest.setBody(responseBody); @@ -213,6 +216,7 @@ public class DecryptThirdTokenFilter extends OncePerRequestFilter { transportRequest.getHeader().setMessage("成功"); // 替换直接写response的方式 String transportResponse = gson.toJson(transportRequest); + log.info("=== 响应体信息 ===transportResponse: {}", transportResponse); renderString(response, HttpServletResponse.SC_OK, transportResponse); return; }