123
This commit is contained in:
@@ -0,0 +1,18 @@
|
||||
package com.ruoyi.cai.util;
|
||||
|
||||
import org.apache.http.conn.ssl.NoopHostnameVerifier;
|
||||
import org.apache.http.conn.ssl.SSLConnectionSocketFactory;
|
||||
import org.apache.http.impl.client.CloseableHttpClient;
|
||||
import org.apache.http.impl.client.HttpClients;
|
||||
import org.apache.http.ssl.SSLContextBuilder;
|
||||
|
||||
import javax.net.ssl.SSLContext;
|
||||
|
||||
public class CustomHttpClient {
|
||||
|
||||
public static CloseableHttpClient createClient() throws Exception {
|
||||
SSLContext sslContext = new SSLContextBuilder().loadTrustMaterial(null, (x509Certificates, s) -> true).build();
|
||||
SSLConnectionSocketFactory sslSocketFactory = new SSLConnectionSocketFactory(sslContext, NoopHostnameVerifier.INSTANCE);
|
||||
return HttpClients.custom().setSSLSocketFactory(sslSocketFactory).build();
|
||||
}
|
||||
}
|
||||
@@ -1,6 +1,8 @@
|
||||
package com.ruoyi.cai.util;
|
||||
|
||||
import org.apache.http.impl.client.CloseableHttpClient;
|
||||
import org.springframework.http.client.BufferingClientHttpRequestFactory;
|
||||
import org.springframework.http.client.HttpComponentsClientHttpRequestFactory;
|
||||
import org.springframework.http.client.SimpleClientHttpRequestFactory;
|
||||
import org.springframework.http.converter.HttpMessageConverter;
|
||||
import org.springframework.http.converter.StringHttpMessageConverter;
|
||||
@@ -12,6 +14,7 @@ import java.util.List;
|
||||
public class RestTemplateUtil {
|
||||
|
||||
public static RestTemplate restTemplate;
|
||||
public static RestTemplate NO_SSL_REST_TEMPLATE;
|
||||
|
||||
static {
|
||||
SimpleClientHttpRequestFactory requestFactory = new SimpleClientHttpRequestFactory();
|
||||
@@ -26,10 +29,34 @@ public class RestTemplateUtil {
|
||||
converter.setDefaultCharset(StandardCharsets.UTF_8);
|
||||
}
|
||||
}
|
||||
|
||||
CloseableHttpClient httpClient = null;
|
||||
try {
|
||||
httpClient = CustomHttpClient.createClient();
|
||||
HttpComponentsClientHttpRequestFactory requestFactoryNoSSL = new HttpComponentsClientHttpRequestFactory(httpClient);
|
||||
requestFactoryNoSSL.setConnectTimeout(3000);
|
||||
requestFactoryNoSSL.setReadTimeout(3000);
|
||||
NO_SSL_REST_TEMPLATE = new RestTemplate(requestFactoryNoSSL);
|
||||
List<HttpMessageConverter<?>> messageConvertersNoSSL = restTemplate.getMessageConverters();
|
||||
for (HttpMessageConverter<?> messageConverter : messageConvertersNoSSL) {
|
||||
if (messageConverter instanceof StringHttpMessageConverter) {
|
||||
StringHttpMessageConverter converter = (StringHttpMessageConverter) messageConverter;
|
||||
converter.setDefaultCharset(StandardCharsets.UTF_8);
|
||||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
public static RestTemplate getRest(){
|
||||
return restTemplate;
|
||||
}
|
||||
|
||||
public static RestTemplate getNoSSLRest(){
|
||||
return NO_SSL_REST_TEMPLATE;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user