Browse Source

fix(zhongche): 更新中车接口配置和修复签名校验

- 更新 CLIENT_ID 为 KFZnKGiDsJ7
- 替换正式环境的公钥和私钥配置
- 注释掉测试环境的旧公钥和私钥配置
- 移除签名校验中的 Base64 解码验证步骤
肖路 2 tuần trước cách đây
mục cha
commit
0a39d17b0b

+ 8 - 8
ruoyi-modules/ruoyi-external/src/main/java/org/dromara/external/controller/zhongche/ZhongChePushController.java

@@ -57,7 +57,7 @@ import static org.dromara.common.core.constant.GlobalConstants.GLOBAL_REDIS_KEY;
 @RequestMapping("/api/mall")
 public class ZhongChePushController {
     private final String key = GLOBAL_REDIS_KEY+"external:zhongche:token:";
-    private final String CLIENT_ID = "KFZAVuIyC56";
+    private final String CLIENT_ID = "KFZnKGiDsJ7";
     private final String VERSION = "1.0.0";
 
     @DubboReference
@@ -71,15 +71,15 @@ public class ZhongChePushController {
     private final IExternalProductCategoryService externalProductCategoryService;
 
     //正式环境
-    /*private static final String DEVELOPER_PUBLIC_KEY = "MFkwEwYHKoZIzj0CAQYIKoEcz1UBgi0DQgAEmUrB5ByAeb8jHayC7vbddqBFDIEsf1cpNO1qJttZ17xlDagVB/tBFasPr/x0+OWf2kimTKah2NGCYarymD1R5Q=="; // 电商提供的私钥
-
-    private static final String DEVELOPER_PRIVATE_KEY = "MIGTAgEAMBMGByqGSM49AgEGCCqBHM9VAYItBHkwdwIBAQQgpQdXwMi21Mg1FhWad2AQLOwfNiDHgwhootau0YerQbagCgYIKoEcz1UBgi2hRANCAATVjJs6XRAMTZ72G6aWbgCAjfAnW0j5R9VFnHySTiF8+1mOisc3xOOr9w/Tu3hixzL5H2gVyLzHDRWkFtyeVqrX";  // 电商提供的公钥*/
+    private static final String DEVELOPER_PUBLIC_KEY = "MFkwEwYHKoZIzj0CAQYIKoEcz1UBgi0DQgAET+jWMEx6VtkEy/ANn9oaYLpxKQ1ZCQYRKwUDy6jUv0ouUPvSPcFKQmHZNRLweR8Oss5BOG2JOSGTNY/v0pzRZw=="; // 电商提供的私钥
+    // 电商提供的公钥*/
+    private static final String DEVELOPER_PRIVATE_KEY = "MIGTAgEAMBMGByqGSM49AgEGCCqBHM9VAYItBHkwdwIBAQQgQu0H97EPqkgz1YS5LkzZNmkG3mS5Er8rJ2LSoJtuOlGgCgYIKoEcz1UBgi2hRANCAARP6NYwTHpW2QTL8A2f2hpgunEpDVkJBhErBQPLqNS/Si5Q+9I9wUpCYdk1EvB5Hw6yzkE4bYk5IZM1j+/SnNFn";
 
 
     //测试环境
-    private static final String DEVELOPER_PUBLIC_KEY = "MFkwEwYHKoZIzj0CAQYIKoEcz1UBgi0DQgAE1YybOl0QDE2e9humlm4AgI3wJ1tI+UfVRZx8kk4hfPtZjorHN8Tjq/cP07t4Yscy+R9oFci8xw0VpBbcnlaq1w=="; // 电商提供的私钥
-
-    private static final String DEVELOPER_PRIVATE_KEY = "MIGTAgEAMBMGByqGSM49AgEGCCqBHM9VAYItBHkwdwIBAQQgpQdXwMi21Mg1FhWad2AQLOwfNiDHgwhootau0YerQbagCgYIKoEcz1UBgi2hRANCAATVjJs6XRAMTZ72G6aWbgCAjfAnW0j5R9VFnHySTiF8+1mOisc3xOOr9w/Tu3hixzL5H2gVyLzHDRWkFtyeVqrX";  // 电商提供的公钥
+//    private static final String DEVELOPER_PUBLIC_KEY = "MFkwEwYHKoZIzj0CAQYIKoEcz1UBgi0DQgAE1YybOl0QDE2e9humlm4AgI3wJ1tI+UfVRZx8kk4hfPtZjorHN8Tjq/cP07t4Yscy+R9oFci8xw0VpBbcnlaq1w=="; // 电商提供的私钥
+//
+//    private static final String DEVELOPER_PRIVATE_KEY = "MIGTAgEAMBMGByqGSM49AgEGCCqBHM9VAYItBHkwdwIBAQQgpQdXwMi21Mg1FhWad2AQLOwfNiDHgwhootau0YerQbagCgYIKoEcz1UBgi2hRANCAATVjJs6XRAMTZ72G6aWbgCAjfAnW0j5R9VFnHySTiF8+1mOisc3xOOr9w/Tu3hixzL5H2gVyLzHDRWkFtyeVqrX";  // 电商提供的公钥
 
 
 
@@ -762,7 +762,7 @@ public class ZhongChePushController {
         // 5. 签名校验
         try {
             // 防御性 Base64 校验
-            Base64.decodeStr(zcTokenBo.getData(), StandardCharsets.UTF_8);
+//            Base64.decodeStr(zcTokenBo.getData(), StandardCharsets.UTF_8);
             // 调用 SignParamUtils 验证请求签名,直接复用之前的逻辑
             boolean signValid = SignParamUtils.verifyRequestSign(zcTokenBo, DEVELOPER_PUBLIC_KEY);
             if (!signValid) {