private HttpClient initHttpClient() {
if(httpclient == null){
try {
X509TrustManager tm = new X509TrustManager() {
public void checkClientTrusted(X509Certificate[] arg0,
String arg1) throws CertificateException {
}
public void checkServerTrusted(X509Certificate[] arg0,
String arg1) throws CertificateException {
}
public X509Certificate[] getAcceptedIssuers() {
return null;
}
};
SSLContext sslcontext = SSLContext.getInstance("TLS");
sslcontext.init(null, new TrustManager[] { tm }, null);
SSLSocketFactory ssf = new SSLSocketFactory(sslcontext);
ClientConnectionManager ccm = new DefaultHttpClient().getConnectionManager();
SchemeRegistry sr = ccm.getSchemeRegistry();
sr.register(new Scheme("https", 8443, ssf));
HttpParams params = new BasicHttpParams();
params.setParameter(CoreConnectionPNames.CONNECTION_TIMEOUT, 1000);
params.setParameter(CoreConnectionPNames.SO_TIMEOUT, 5000);
httpclient = new DefaultHttpClient(ccm,params);
} catch (Exception ex) {
ex.printStackTrace();
}
}
return httpclient;
}
分享到:
相关推荐
标题中的“使用httpClient访问https+443端口号”指的是使用Apache HttpClient库来发起HTTPS(安全超文本传输协议)请求,目标服务器的默认端口是443。HTTPS是一种基于SSL/TLS的安全通信协议,用于在客户端和服务器...
通过运行这个程序,你可以连接到一个需要客户端认证的服务器,获取其证书,并将其安装到本地的Java信任存储中。这样,Java的SSL/TLS实现就能找到并使用这个证书进行认证。 接着,我们关注`...
根据提供的文件信息,我们可以深入探讨如何使用`...通过以上步骤,我们可以使用`httpclient`库安全地进行HTTPS访问,并且可以根据具体需求定制信任管理和异常处理机制。这对于构建安全可靠的网络应用程序至关重要。
HttpClient之Https应用实例~ 包含: HttpClient 使用代理访问Https HttpClient 信任所有主机-对于任何证书都不做检查 HttpClient 允许所有证书的校验(包括过期证书)
如果Servlet需要HTTPS(SSL/TLS)加密,HttpClient需要配置SSLContext和TrustStrategy,处理证书和信任问题。 10. **最佳实践**: - 关闭响应实体和HttpClient实例以释放资源。 - 避免长时间持有HttpClient实例...
访问HTTPS接口时,我们通常需要创建自定义的`SSLSocketFactory`,以便加载我们的证书和信任策略。在提供的文件`MySSLProtocolSocketFactory.java`中,可能实现了这个功能。它可能会覆盖默认的SSL协议,允许我们提供...
【描述】:“本教程将指导你如何利用Apache HttpClient 4.1实现对HTTPS服务的访问,首先需要在Tomcat服务器上配置SSL支持。我们将涵盖SSL证书的生成、Tomcat服务器的SSL配置以及HttpClient的使用。” 【标签】:...
我们可以创建一个信任所有证书的TrustManager,如下所示: ```java import javax.net.ssl.X509TrustManager; import java.security.cert.X509Certificate; public class NoopTrustManager implements X509...
总的来说,这个示例展示了如何在Java中使用HttpClient调用HTTPS服务,同时跳过SSL证书验证。然而,这样做存在安全风险,因为任何中间人攻击者都可以拦截并篡改通信。在生产环境中,你应该始终使用受信任的证书并启用...
TrustManager是一个接口,用于管理信任证书。TrustManager可以检查证书的有效性,并决定是否信任该证书。在Java中,TrustManager可以用来忽略证书校验过程。 知识点7:SSLSocketFactory的基本概念 ...
而使用`httpclient`时,你需要配置客户端的信任存储,以便接受服务器的证书,并设置SSL上下文以启用HTTPS连接。 总的来说,这个压缩包提供的`keytool`和`httpclient`相关JAR文件是进行安全的HTTPS通信的基础。理解...
总结来说,`HTTPClient`访问启用SSL的Quickr REST API涉及到创建支持SSL的Socket工厂以及自定义的信任管理器,以适应不严格的证书验证。这两个类`EasySSLProtocolSocketFactory`和`EasyX509TrustManager`是实现这一...
然而,在某些情况下,我们可能需要在开发环境中跳过HTTPS的证书验证,以允许与不受信任的服务器进行通信。以下是如何在Java中实现这一功能的详细步骤和相关知识点: 首先,了解HTTPS的工作原理是至关重要的。HTTPS...
### AndroidHttpClient访问Tomcat双向SSL验证服务器 #### 环境与背景介绍 本文主要讨论如何使用`AndroidHttpClient`访问`Tomcat`双向SSL验证服务器的相关技术和实施步骤。本项目的目标是在`Android WebView`上成功...
4) 用 httpClient 访问 https:配置 HttpClient 使用 SSL,设置信任的 KeyStore 和相关安全参数,然后发送 HTTPS 请求。 教程版本说明 该教程的初始版本为 0.9,由作者 wanghe 编写。内容包括了基本的 HttpClient...
- ESP8266可能会遇到自签名证书或者未信任的证书问题,此时需要禁用证书验证或手动添加服务器的自签名证书到设备的信任列表。 - 可以使用`setInsecure()`方法跳过证书验证,但这样做会降低安全性,只应在调试阶段...
首先,你需要将服务器的证书导入到一个信任库文件(如JKS或PKCS12格式),然后创建一个`SSLContext`对象,并设置自定义的`TrustManager`。这通常涉及以下步骤: - 导入证书:使用`keytool`命令行工具将服务器证书...
- 配置SSL上下文:对于HTTPS请求,需要创建`SSLContext`,可能还需要信任自签名证书或忽略主机名验证。 - 使用`SchemeRegistry`或`SSLContextBuilder`配置HTTPS支持。 5. **POST请求与表单编码**: - 对于POST...
在处理HTTPS请求时,两者都需要配置信任的证书或者禁用SSL验证(不推荐在生产环境)。HttpClient可以使用SSLContext和KeyManagerFactory来设置,而RestTemplate可以通过配置HttpComponentsClientHttpRequestFactory...
`KeyManagerFactory`管理应用的私钥和证书,而`TrustManagerFactory`负责管理受信任的证书。 2. **设置SSL套接字工厂**:创建了`SSLContext`之后,你可以使用`SSLContext`的`getSocketFactory()`方法获取`...