From 32a905fbf1daeac74cbd573e5b841709c44955c2 Mon Sep 17 00:00:00 2001
From: ZY <zc857179121@qq.com>
Date: 星期四, 08 五月 2025 17:01:27 +0800
Subject: [PATCH] 代码编写

---
 src/main/java/com/zy/nc/SendUtil.java |  144 ++++++++++++++++++++++++++---------------------
 1 files changed, 80 insertions(+), 64 deletions(-)

diff --git a/src/main/java/com/zy/nc/Test.java b/src/main/java/com/zy/nc/SendUtil.java
similarity index 80%
rename from src/main/java/com/zy/nc/Test.java
rename to src/main/java/com/zy/nc/SendUtil.java
index 38a96ae..5db13b4 100644
--- a/src/main/java/com/zy/nc/Test.java
+++ b/src/main/java/com/zy/nc/SendUtil.java
@@ -21,7 +21,7 @@
  * @author lizhmf
  * @date 2019骞�6鏈�20鏃ヤ笂鍗�10:53:11
  */
-public class Test {
+public class SendUtil {
 
     // app_secret
     private static String client_secret = null;
@@ -70,10 +70,88 @@
             }
             System.out.println("getTokenData:" + token);
             // 娴嬭瘯openapi
-            testApi(token);
+            //sendDataToNc(token);
         } catch (Exception e) {
             e.printStackTrace();
         }
+    }
+
+    /**
+     * 璇锋眰openapi
+     *
+     * @param token
+     * @throws Exception
+     */
+    public static NcResultMessage sendDataToNc(String token, String baseUrl, String apiUrl, String requestBody) {
+        if (token == null) {
+            try {
+                token = getToken();
+            } catch (Exception e) {
+                throw new RuntimeException(e);
+            }
+        }
+        // token杞璞★紝鑾峰彇api璁块棶鎵�鐢╰oken鍜宻ecret
+        NcResultMessage returnData = JSONObject.parseObject(token, NcResultMessage.class);
+        if (returnData.isSuccess()) {
+            JSONObject data = JSONObject.parseObject(returnData.getData().toString());
+            String access_token = (String) data.get("access_token");
+            String security_key = (String) data.get("security_key");
+            String refresh_token = (String) data.get("refresh_token");
+            Long expire_in = data.getLong("expires_in");
+            Long ts = data.getLong("ts");
+            if (ts + expire_in < System.currentTimeMillis()) {
+                try {
+                    token = getToken();
+                } catch (Exception e) {
+                    throw new RuntimeException(e);
+                }
+                data = JSONObject.parseObject(token.getBytes(), NcResultMessage.class);
+                access_token = (String) data.get("access_token");
+                security_key = (String) data.get("security_key");
+                refresh_token = (String) data.get("refresh_token");
+            }
+            System.out.println("銆怉CCESS_TOKEN銆�:" + access_token);
+            // 璇锋眰璺緞
+            String url = baseUrl + apiUrl;
+            // header 鍙傛暟
+            Map<String, String> headermap = new HashMap<>();
+            headermap.put("access_token", access_token);
+            headermap.put("client_id", client_id);
+            StringBuffer sb = new StringBuffer();
+            sb.append(client_id);
+            if (!Cools.isEmpty(requestBody)) {
+                // sb.append(requestBody.replaceAll("\\s*|\t|\r|\n", "").trim());
+                sb.append(requestBody);
+            }
+            sb.append(pubKey);
+            String sign = SHA256Util.getSHA256(sb.toString(), pubKey);
+            headermap.put("signature", sign);
+            if (!Cools.isEmpty(busi_id)) {
+                headermap.put("busi_id", busi_id);
+            }
+            if (!Cools.isEmpty(repeat_check)) {
+                headermap.put("repeat_check", repeat_check);
+            }
+            //		headermap.put("ucg_flag", "y");
+            String mediaType = "application/json;charset=utf-8";
+            // 琛ㄤ綋鏁版嵁json
+            // 鏍规嵁瀹夊叏绾у埆閫夋嫨鍔犲瘑鎴栧帇缂╄姹傝〃浣撳弬鏁�
+            String json = null;
+            String result;
+            String result2;
+            try {
+                json = dealRequestBody(requestBody, security_key, secret_level);
+                // 杩斿洖鍊�
+                result = doPost(url, null, mediaType, headermap, json);
+                result2 = dealResponseBody(result, security_key, secret_level);
+            } catch (Exception e) {
+                throw new RuntimeException(e);
+            }
+            System.out.println("銆怰ESULT銆�:" + result);
+            System.out.println("result瑙e瘑:" + result2);
+            return JSONObject.parseObject(result2, NcResultMessage.class);
+        }
+        return null;
     }
 
     /**
@@ -161,68 +239,6 @@
         return token;
     }
 
-    /**
-     * 璇锋眰openapi
-     *
-     * @param token
-     * @throws Exception
-     */
-    private static void testApi(String token) throws Exception {
-        // token杞璞★紝鑾峰彇api璁块棶鎵�鐢╰oken鍜宻ecret
-        ResultMessageUtil returnData = JSONObject.parseObject(token, ResultMessageUtil.class);
-        Map<String, Object> data = (Map<String, Object>) returnData.getData();
-        String access_token = (String) data.get("access_token");
-        String security_key = (String) data.get("security_key");
-        String refresh_token = (String) data.get("refresh_token");
-        long expire_in = new Double((double) data.get("expires_in")).longValue();
-        long ts = new Double((double) data.get("ts")).longValue();
-        if (ts + expire_in < System.currentTimeMillis()) {
-            token = getToken();
-            returnData = JSONObject.parseObject(token, ResultMessageUtil.class);
-            data = (Map<String, Object>) returnData.getData();
-            access_token = (String) data.get("access_token");
-            security_key = (String) data.get("security_key");
-            refresh_token = (String) data.get("refresh_token");
-        }
-        System.out.println("銆怉CCESS_TOKEN銆�:" + access_token);
-
-        // 璇锋眰璺緞
-        String url = baseUrl + apiUrl;
-        // header 鍙傛暟
-        Map<String, String> headermap = new HashMap<>();
-        headermap.put("access_token", access_token);
-        headermap.put("client_id", client_id);
-
-        StringBuffer sb = new StringBuffer();
-        sb.append(client_id);
-        if (!Cools.isEmpty(requestBody)) {
-            // sb.append(requestBody.replaceAll("\\s*|\t|\r|\n", "").trim());
-            sb.append(requestBody);
-        }
-        sb.append(pubKey);
-        String sign = SHA256Util.getSHA256(sb.toString(), pubKey);
-        headermap.put("signature", sign);
-
-        if (!Cools.isEmpty(busi_id)) {
-            headermap.put("busi_id", busi_id);
-        }
-        if (!Cools.isEmpty(repeat_check)) {
-            headermap.put("repeat_check", repeat_check);
-        }
-//		headermap.put("ucg_flag", "y");
-
-        String mediaType = "application/json;charset=utf-8";
-
-        // 琛ㄤ綋鏁版嵁json
-        // 鏍规嵁瀹夊叏绾у埆閫夋嫨鍔犲瘑鎴栧帇缂╄姹傝〃浣撳弬鏁�
-        String json = dealRequestBody(requestBody, security_key, secret_level);
-
-        // 杩斿洖鍊�
-        String result = doPost(url, null, mediaType, headermap, json);
-        String result2 = dealResponseBody(result, security_key, secret_level);
-        System.out.println("銆怰ESULT銆�:" + result);
-        System.out.println("result瑙e瘑:" + result2);
-    }
 
     /**
      * 杩斿洖鍊艰繘琛岃繃鍔犲瘑鍜屽帇缂╋紝瀵硅繑鍥炲�艰繘琛岃В鍘嬪拰瑙e瘑

--
Gitblit v1.9.1