From 6f0058ec29177bd46c7700fcc7f71f395db571c4 Mon Sep 17 00:00:00 2001 From: dimengzhe Date: Tue, 10 Dec 2024 16:50:57 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/yxt/ss/gateway/api/ClientService.java | 13 +++++++++++-- .../com/yxt/ss/gateway/api/rest/ClientRest.java | 5 +---- .../java/com/yxt/ss/gateway/api/rest/Signature.java | 6 ------ 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/yxt/ss/gateway/api/ClientService.java b/src/main/java/com/yxt/ss/gateway/api/ClientService.java index 636cc7f..5270c28 100644 --- a/src/main/java/com/yxt/ss/gateway/api/ClientService.java +++ b/src/main/java/com/yxt/ss/gateway/api/ClientService.java @@ -1,5 +1,7 @@ package com.yxt.ss.gateway.api; +import com.yxt.ss.gateway.api.utils.AppKeyConfig; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.io.UnsupportedEncodingException; @@ -16,19 +18,26 @@ import java.util.Map; @Service public class ClientService { + @Autowired + private AppKeyConfig appKeyConfig; + + public String getSecret(String appKey) { + return appKeyConfig.getKeys().get(appKey); + } + /** * 生成请求签名 * * @param parameters 请求参数 - * @param secret 密钥 * @return 签名 */ - public String generateSignature(Map parameters, String secret) throws UnsupportedEncodingException, NoSuchAlgorithmException { + public String generateSignature(Map parameters) throws UnsupportedEncodingException, NoSuchAlgorithmException { // 2. 拼接参数字符串 String content = joinParameters(parameters); // 3. 将密钥加在参数字符串的前后 + String secret = getSecret(parameters.get("_app")); content = secret + content + secret; // 4. 计算签名 (MD5) diff --git a/src/main/java/com/yxt/ss/gateway/api/rest/ClientRest.java b/src/main/java/com/yxt/ss/gateway/api/rest/ClientRest.java index e547d75..095750e 100644 --- a/src/main/java/com/yxt/ss/gateway/api/rest/ClientRest.java +++ b/src/main/java/com/yxt/ss/gateway/api/rest/ClientRest.java @@ -5,7 +5,6 @@ import com.fasterxml.jackson.databind.ObjectMapper; import com.yxt.ss.gateway.api.ClientService; import com.yxt.ss.gateway.api.utils.ResultBean; import com.yxt.ss.gateway.api.utils.SignatureQuery; -import com.yxt.ss.gateway.api.utils.SignatureUtil; import okhttp3.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; @@ -34,8 +33,6 @@ public class ClientRest { //appkey static final String APPKEY = "appKey4"; - //secret - static final String SECRET = "secret"; //开发端,生成签名并调用服务器端验证签名、appKey等值。 @PostMapping("/getSign") @@ -49,7 +46,7 @@ public class ClientRest { tree.put("_t", String.valueOf(System.currentTimeMillis() / 1000)); tree.put("_s", ""); // 生成签名 - String sign = clientService.generateSignature(tree, SECRET); + String sign = clientService.generateSignature(tree); //添加签名值map tree.put("_sign", sign); //发起请求 diff --git a/src/main/java/com/yxt/ss/gateway/api/rest/Signature.java b/src/main/java/com/yxt/ss/gateway/api/rest/Signature.java index 7f578e7..91aaef1 100644 --- a/src/main/java/com/yxt/ss/gateway/api/rest/Signature.java +++ b/src/main/java/com/yxt/ss/gateway/api/rest/Signature.java @@ -30,12 +30,6 @@ public class Signature { return appKeyConfig.getKeys().get(appKey); } - - //appkey - static final String APPKEY = "appKey4"; - //secret - static final String SECRET = "secret"; - //验证 @PostMapping("/validate") ResultBean validate(Map data) {