From 2166c1a14f9629aa49a5f3bb849ce878df4c4892 Mon Sep 17 00:00:00 2001
From: yangbin <yangbin@qq.com>
Date: 星期三, 28 八月 2024 17:23:25 +0800
Subject: [PATCH] 2

---
 lxzn-module-ai/src/main/java/org/jeecg/modules/utils/AiTestUils.java |  101 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 101 insertions(+), 0 deletions(-)

diff --git a/lxzn-module-ai/src/main/java/org/jeecg/modules/utils/AiTestUils.java b/lxzn-module-ai/src/main/java/org/jeecg/modules/utils/AiTestUils.java
new file mode 100644
index 0000000..388929e
--- /dev/null
+++ b/lxzn-module-ai/src/main/java/org/jeecg/modules/utils/AiTestUils.java
@@ -0,0 +1,101 @@
+package org.jeecg.modules.utils;
+
+
+import javax.net.ssl.*;
+import java.io.ByteArrayOutputStream;
+import java.io.DataOutputStream;
+import java.io.InputStream;
+import java.net.URL;
+import java.security.cert.CertificateException;
+import java.security.cert.X509Certificate;
+
+public class AiTestUils {
+
+    private static class TrustAnyTrustManager implements X509TrustManager {
+        /**
+         * 璇ユ柟娉曟鏌ュ鎴风鐨勮瘉涔︼紝鑻ヤ笉淇′换璇ヨ瘉涔﹀垯鎶涘嚭寮傚父銆傜敱浜庢垜浠笉闇�瑕佸瀹㈡埛绔繘琛岃璇侊紝鍥犳鎴戜滑鍙渶瑕佹墽琛岄粯璁ょ殑淇′换绠$悊鍣ㄧ殑杩�
+         * 涓柟娉曘��
+         * JSSE涓紝榛樿鐨勪俊浠荤鐞嗗櫒绫讳负TrustManager銆�
+         */
+        @Override
+        public void checkClientTrusted(X509Certificate[] chain, String authType)
+                throws CertificateException {
+        }
+
+        /**
+         * 璇ユ柟娉曟鏌ユ湇鍔″櫒鐨勮瘉涔︼紝鑻ヤ笉淇′换璇ヨ瘉涔﹀悓鏍锋姏鍑哄紓甯搞�傞�氳繃鑷繁瀹炵幇璇ユ柟娉曪紝鍙互浣夸箣淇′换鎴戜滑鎸囧畾鐨勪换浣曡瘉涔︺��
+         * 鍦ㄥ疄鐜拌鏂规硶鏃讹紝涔熷彲浠ョ畝鍗曠殑涓嶅仛浠讳綍澶勭悊锛� 鍗充竴涓┖鐨勫嚱鏁颁綋锛岀敱浜庝笉浼氭姏鍑哄紓甯革紝瀹冨氨浼氫俊浠讳换浣曡瘉涔︺��(non-Javadoc)
+         */
+        @Override
+        public void checkServerTrusted(X509Certificate[] chain, String authType)
+                throws CertificateException {
+        }
+
+        /**
+         * @return 杩斿洖鍙椾俊浠荤殑X509璇佷功鏁扮粍銆�
+         */
+        @Override
+        public X509Certificate[] getAcceptedIssuers() {
+            return new X509Certificate[]{};
+        }
+    }
+
+    private static class TrustAnyHostnameVerifier implements HostnameVerifier {
+        @Override
+        public boolean verify(String hostname, SSLSession session) {
+            return true;
+        }
+    }
+
+    /**
+     * post鏂瑰紡璇锋眰鏈嶅姟鍣�(https鍗忚)
+     * @param url     姹傚湴鍧�
+     * @param content 鍙傛暟
+     * @return
+     */
+    public static String sendJsonToHttpsPost(String url, String content) {
+        try {
+            /*
+             * 绫籋ttpsURLConnection浼间箮骞舵病鏈夋彁渚涙柟娉曡缃俊浠荤鐞嗗櫒銆傚叾瀹烇紝
+             * HttpsURLConnection閫氳繃SSLSocket鏉ュ缓绔嬩笌HTTPS鐨勫畨鍏ㄨ繛鎺�
+             * 锛孲SLSocket瀵硅薄鏄敱SSLSocketFactory鐢熸垚鐨勩��
+             * HttpsURLConnection鎻愪緵浜嗘柟娉晄etSSLSocketFactory
+             * (SSLSocketFactory)璁剧疆瀹冧娇鐢ㄧ殑SSLSocketFactory瀵硅薄銆�
+             * SSLSocketFactory閫氳繃SSLContext瀵硅薄鏉ヨ幏寰楋紝鍦ㄥ垵濮嬪寲SSLContext瀵硅薄鏃讹紝鍙寚瀹氫俊浠荤鐞嗗櫒瀵硅薄銆�
+             */
+            SSLContext sc = SSLContext.getInstance("SSL");
+            sc.init(null, new TrustManager[]{new TrustAnyTrustManager()},
+                    new java.security.SecureRandom());
+
+            URL console = new URL(url);
+            HttpsURLConnection conn = (HttpsURLConnection) console.openConnection();
+            conn.setSSLSocketFactory(sc.getSocketFactory());
+            conn.setHostnameVerifier(new TrustAnyHostnameVerifier());
+            conn.setDoOutput(true);
+            // 璁剧疆璇锋眰澶�
+            conn.setRequestProperty("Content-Type", "application/json;charset=utf-8");
+            conn.connect();
+            DataOutputStream out = new DataOutputStream(conn.getOutputStream());
+            out.write(content.getBytes());
+            // 鍒锋柊銆佸叧闂�
+            out.flush();
+            out.close();
+            InputStream is = conn.getInputStream();
+            if (is != null) {
+                ByteArrayOutputStream outStream = new ByteArrayOutputStream();
+                byte[] buffer = new byte[1024];
+                int len = 0;
+                while ((len = is.read(buffer)) != -1) {
+                    outStream.write(buffer, 0, len);
+                }
+                is.close();
+                return outStream.toString();
+            }
+        } catch (Exception e) {
+
+        }
+        return null;
+    }
+
+
+}

--
Gitblit v1.9.3