| 
					
				 | 
			
			
				@@ -0,0 +1,55 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+package com.ruoyi.framework.config; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import feign.*; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import okhttp3.ConnectionPool; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import okhttp3.OkHttpClient; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.springframework.boot.autoconfigure.AutoConfigureBefore; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.springframework.cloud.openfeign.FeignAutoConfiguration; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.springframework.cloud.openfeign.support.SpringMvcContract; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.springframework.context.annotation.Bean; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.springframework.context.annotation.Configuration; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.util.concurrent.TimeUnit; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+@Configuration 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+@ConditionalOnClass(Feign.class) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+@AutoConfigureBefore(FeignAutoConfiguration.class) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+public class FeignConfig { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Bean 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public OkHttpClient okHttpClient(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return new OkHttpClient.Builder() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .readTimeout(60, TimeUnit.SECONDS) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .connectTimeout(60, TimeUnit.SECONDS) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .writeTimeout(120, TimeUnit.SECONDS) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .connectionPool(new ConnectionPool()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .build(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Bean 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public Feign.Builder feignBuilder() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return Feign.builder(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Bean 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public Contract feignContract() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return new SpringMvcContract(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Bean 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public Logger.Level feignLoggerLevel() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return Logger.Level.BASIC; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Bean 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public Request.Options feignRequestOptions() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return new Request.Options(10, TimeUnit.SECONDS, 60,TimeUnit.SECONDS,true); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Bean 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public Retryer feignRetry() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return new Retryer.Default(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 |