From 7b73755e320f1bec9254b86a0f078c5f7969880d Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期四, 19 十二月 2024 10:06:47 +0800
Subject: [PATCH] 接入海康成绩

---
 ycl-server/src/main/java/com/ycl/feign/HKFeignConfig.java |   41 +++++++++++++++++++++++++++++++++++------
 1 files changed, 35 insertions(+), 6 deletions(-)

diff --git a/ycl-server/src/main/java/com/ycl/feign/HKFeignConfig.java b/ycl-server/src/main/java/com/ycl/feign/HKFeignConfig.java
index d0b40ba..3612b8a 100644
--- a/ycl-server/src/main/java/com/ycl/feign/HKFeignConfig.java
+++ b/ycl-server/src/main/java/com/ycl/feign/HKFeignConfig.java
@@ -1,24 +1,48 @@
 package com.ycl.feign;
 
 import com.ycl.interceptor.HKFeignInterceptor;
+import feign.Client;
+import feign.Logger;
 import feign.RequestInterceptor;
 import feign.codec.ErrorDecoder;
+import org.springframework.cloud.configuration.SSLContextFactory;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
+
+import javax.net.ssl.SSLContext;
+import javax.net.ssl.TrustManager;
+import javax.net.ssl.X509TrustManager;
+import java.security.cert.CertificateException;
+import java.security.cert.X509Certificate;
 
 /**
  *娴峰悍鎺ュ彛閰嶇疆
  */
 @Configuration
 public class HKFeignConfig {
-    /**
-     * 娉ㄥ叆鎷︽埅鍣�
-     */
+    //璺宠繃ssl楠岃瘉
     @Bean
-    public RequestInterceptor requestInterceptor(){
-        return new HKFeignInterceptor();
+    public Client generateClient() {
+        try {
+            SSLContext ctx = SSLContext.getInstance("SSL");
+            X509TrustManager tm = new X509TrustManager() {
+                @Override
+                public void checkClientTrusted(X509Certificate[] chain, String authType) throws CertificateException {
+                }
+                @Override
+                public void checkServerTrusted(X509Certificate[] chain, String authType) throws CertificateException {
+                }
+                @Override
+                public X509Certificate[] getAcceptedIssuers() {
+                    return null;
+                }
+            };
+            ctx.init(null, new TrustManager[]{tm}, null);
+            return new Client.Default(ctx.getSocketFactory(), (hostname, session) -> true);
+        } catch (Exception e) {
+            return null;
+        }
     }
-
     /**
      * 璋冪敤寮傚父澶勭悊
      * @return
@@ -27,4 +51,9 @@
     public ErrorDecoder errorDecoder() {
         return new FeignErrorDecoder();
     }
+
+    @Bean
+    Logger.Level feignLoggerLevel(){
+        return Logger.Level.FULL;
+    }
 }

--
Gitblit v1.8.0