本文整理汇总了Java中org.apache.http.impl.client.HttpClientBuilder.setSSLContext方法的典型用法代码示例。如果您正苦于以下问题:Java HttpClientBuilder.setSSLContext方法的具体用法?Java HttpClientBuilder.setSSLContext怎么用?Java HttpClientBuilder.setSSLContext使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.apache.http.impl.client.HttpClientBuilder
的用法示例。
在下文中一共展示了HttpClientBuilder.setSSLContext方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: getBuilder
import org.apache.http.impl.client.HttpClientBuilder; //导入方法依赖的package包/类
@NotNull
static HttpClientBuilder getBuilder() {
final HttpClientBuilder builder = HttpClients.custom().setSSLContext(CertificateManager.getInstance().getSslContext()).
setMaxConnPerRoute(100000).setConnectionReuseStrategy(DefaultConnectionReuseStrategy.INSTANCE);
final HttpConfigurable proxyConfigurable = HttpConfigurable.getInstance();
final List<Proxy> proxies = proxyConfigurable.getOnlyBySettingsSelector().select(URI.create(EduStepicNames.STEPIC_URL));
final InetSocketAddress address = proxies.size() > 0 ? (InetSocketAddress)proxies.get(0).address() : null;
if (address != null) {
builder.setProxy(new HttpHost(address.getHostName(), address.getPort()));
}
final ConfirmingTrustManager trustManager = CertificateManager.getInstance().getTrustManager();
try {
SSLContext sslContext = SSLContext.getInstance("TLS");
sslContext.init(null, new TrustManager[]{trustManager}, new SecureRandom());
builder.setSSLContext(sslContext);
}
catch (NoSuchAlgorithmException | KeyManagementException e) {
LOG.error(e.getMessage());
}
return builder;
}
示例2: createHttpClientBuilder
import org.apache.http.impl.client.HttpClientBuilder; //导入方法依赖的package包/类
protected HttpClientBuilder createHttpClientBuilder(SiteConfig siteConfig) {
HttpClientBuilder httpClientBuilder = HttpClients.custom();
httpClientBuilder.setConnectionTimeToLive(siteConfig.getConnTimeToLiveMillis(), TimeUnit.MILLISECONDS);
httpClientBuilder.setMaxConnPerRoute(siteConfig.getMaxConnPerRoute());
httpClientBuilder.setMaxConnTotal(siteConfig.getMaxConnTotal());
httpClientBuilder.setUserAgent(siteConfig.getUserAgent());
httpClientBuilder.setRetryHandler(createHttpRequestRetryHandler());
httpClientBuilder.setRedirectStrategy(createRedirectStrategy());
httpClientBuilder.setSSLContext(createSSLContext());
httpClientBuilder.setSSLHostnameVerifier(createSSLHostnameVerifier());
httpClientBuilder.setDefaultConnectionConfig(createConnectionConfig(siteConfig));
httpClientBuilder.setDefaultSocketConfig(createSocketConfig(siteConfig));
httpClientBuilder.setDefaultCookieSpecRegistry(createCookieSpecRegistry());
httpClientBuilder.setDefaultCookieStore(createCookieStore());
return httpClientBuilder;
}
示例3: getCustomClient
import org.apache.http.impl.client.HttpClientBuilder; //导入方法依赖的package包/类
/**
* custom http client for server with SSL errors
*
* @return
*/
public final CloseableHttpClient getCustomClient() {
try {
HttpClientBuilder builder = HttpClientBuilder.create().useSystemProperties();
SSLContext sslContext = new SSLContextBuilder().loadTrustMaterial(null,
(TrustStrategy) (X509Certificate[] arg0, String arg1) -> true).build();
builder.setSSLContext(sslContext);
HostnameVerifier hostnameVerifier = new NoopHostnameVerifier();
SSLConnectionSocketFactory sslSocketFactory = new SSLConnectionSocketFactory(sslContext, hostnameVerifier);
Registry<ConnectionSocketFactory> socketFactoryRegistry = RegistryBuilder.<ConnectionSocketFactory>create()
.register("http", PlainConnectionSocketFactory.getSocketFactory())
.register("https", sslSocketFactory)
.build();
PoolingHttpClientConnectionManager connMgr = new PoolingHttpClientConnectionManager(socketFactoryRegistry);
builder.setConnectionManager(connMgr);
return builder.build();
} catch (Exception ex) {
LOG.log(Level.SEVERE, ex.getMessage(), ex);
}
return getSystemClient();
}
示例4: disableSslValidationOnHttpClientBuilder
import org.apache.http.impl.client.HttpClientBuilder; //导入方法依赖的package包/类
private HttpClientBuilder disableSslValidationOnHttpClientBuilder(HttpClientBuilder builder)
{
SSLContext sslContext;
try {
sslContext = new SSLContextBuilder().loadTrustMaterial(null, (arg0, arg1) -> true).build();
builder.setSSLContext(sslContext);
builder.setSSLHostnameVerifier(NoopHostnameVerifier.INSTANCE);
} catch (KeyManagementException | NoSuchAlgorithmException | KeyStoreException e) {
throw new RuntimeException("Could not disable SSL on HttpClient builder.", e);
}
return builder;
}
示例5: prepareRestTemplate
import org.apache.http.impl.client.HttpClientBuilder; //导入方法依赖的package包/类
/**
* Ensures that the passed-in {@link RestTemplate} is using the Apache HTTP Client. If the optional {@code username} AND
* {@code password} are not empty, then a {@link BasicCredentialsProvider} will be added to the {@link CloseableHttpClient}.
*
* Furthermore, you can set the underlying {@link SSLContext} of the {@link HttpClient} allowing you to accept self-signed
* certificates.
*
* @param restTemplate Must not be null
* @param username Can be null
* @param password Can be null
* @param skipSslValidation Use with caution! If true certificate warnings will be ignored.
*/
public static void prepareRestTemplate(
RestTemplate restTemplate,
String username,
String password,
boolean skipSslValidation) {
Assert.notNull(restTemplate, "The provided RestTemplate must not be null.");
final HttpClientBuilder httpClientBuilder = HttpClientBuilder.create();
if (StringUtils.hasText(username) && StringUtils.hasText(password)) {
final BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
credentialsProvider.setCredentials(AuthScope.ANY,
new UsernamePasswordCredentials(
username,
password));
httpClientBuilder.setDefaultCredentialsProvider(credentialsProvider);
}
if (skipSslValidation) {
httpClientBuilder.setSSLContext(HttpClientUtils.buildCertificateIgnoringSslContext());
httpClientBuilder.setSSLHostnameVerifier(new NoopHostnameVerifier());
}
final CloseableHttpClient httpClient = httpClientBuilder.build();
final HttpComponentsClientHttpRequestFactory requestFactory = new HttpComponentsClientHttpRequestFactory(httpClient);
restTemplate.setRequestFactory(requestFactory);
}
示例6: extend
import org.apache.http.impl.client.HttpClientBuilder; //导入方法依赖的package包/类
@Override
public HttpClientBuilder extend(HttpClientBuilder httpClientBuilder, GerritAuthData authData) {
HttpClientBuilder builder = super.extend(httpClientBuilder, authData);
builder.setSSLContext(trustAnyX509Certificate);
builder.setSSLHostnameVerifier(acceptAnyX509Hostname);
return builder;
}
开发者ID:GerritForge,项目名称:gerrit-plugin,代码行数:8,代码来源:SSLNoVerifyCertificateManagerClientBuilderExtension.java