`
Jatula
  • 浏览: 279266 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

HttpClient Examples:Custom SSL context

阅读更多

官方主頁:http://hc.apache.org/

 

Components

Custom SSL context

This example demonstrates how to create secure connections with a custom SSL context.

 

自定义SSL内容

 

这个例子示范怎样用自定义SSL内容创建一个安全的连接。

 

package cn.lake.util;

import java.io.File;
import java.io.FileInputStream;
import java.security.KeyStore;

import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.conn.scheme.Scheme;
import org.apache.http.conn.ssl.SSLSocketFactory;
import org.apache.http.impl.client.DefaultHttpClient;

/**
 * This example demonstrates how to create secure connections with a custom SSL
 * context.
 */
public class ClientCustomSSL {

	public final static void main(String[] args) throws Exception {
		DefaultHttpClient httpclient = new DefaultHttpClient();

		KeyStore trustStore = KeyStore.getInstance(KeyStore.getDefaultType());
		FileInputStream instream = new FileInputStream(new File("my.keystore"));
		try {
			trustStore.load(instream, "nopassword".toCharArray());
		} finally {
			instream.close();
		}

		SSLSocketFactory socketFactory = new SSLSocketFactory(trustStore);
		Scheme sch = new Scheme("https", socketFactory, 443);
		httpclient.getConnectionManager().getSchemeRegistry().register(sch);

		HttpGet httpget = new HttpGet("https://localhost/");

		System.out.println("executing request" + httpget.getRequestLine());

		HttpResponse response = httpclient.execute(httpget);
		HttpEntity entity = response.getEntity();

		System.out.println("----------------------------------------");
		System.out.println(response.getStatusLine());
		if (entity != null) {
			System.out.println("Response content length: " + entity.getContentLength());
		}
		if (entity != null) {
			entity.consumeContent();
		}
	}

}

 

 

翻譯的不好,請見諒!

分享到:
评论
3 楼 gembler 2009-01-15  
Jatula 写道
自定义SSL内容



这个例子示范怎样用自定义SSL内容创建一个安全的连接。

传说中的翻译?
2 楼 xuyao 2009-01-15  
mazzystar 写道
翻译的挺好  加油

哪有翻译,我怎么没看到
1 楼 mazzystar 2009-01-15  
翻译的挺好  加油

相关推荐

    httpClient实例httpClient调用 http/https实例 忽略SSL验证

    SSLContext sslContext = SSLContexts.custom().loadTrustMaterial(null, new TrustSelfSignedStrategy()).build(); ``` 然后,使用这个`SSLContext`创建一个`SSLSocketFactory`: ```java ...

    httpclient4.5 绕过ssl认证文件访问

    3. **配置HttpClient**:将自定义的SSLContext应用到HttpClient的HttpConnectionFactory。 ```java import org.apache.http.conn.ssl.SSLConnectionSocketFactory; import org.apache....

    http远程接口调用-httpClient+跳过SSL证书校验

    以下是如何创建一个跳过SSL证书校验的HttpClient: ```java // 创建自定义的SSLContext,信任所有证书 SSLContext sslContext = SSLContexts.custom().loadTrustMaterial(null, new TrustStrategy() { @Override ...

    HttpClient问题:The server failed to respond with a valid HTTP resp

    RequestConfig config = RequestConfig.custom() .setConnectTimeout(10000) // 连接超时,单位毫秒 .setSocketTimeout(10000) // 读取超时,单位毫秒 .build(); HttpGet get = new HttpGet(url); get.set...

    java,HttpClient模拟上传,绕过SSL认证

    CloseableHttpClient httpClient = HttpClients.custom().setSslcontext(sslContext).build(); // 模拟上传文件 String uploadUrl = "https://your-upload-server.com/upload"; ...

    commons-httpclient-3.1jar包

    3. SSL证书问题:处理自签名或不受信任的证书,可能需要自定义SSLSocketFactory。 4. 并发处理:在多线程环境中,需正确管理和同步HttpClient实例。 总的来说,Apache Commons HttpClient 3.1是Java开发中处理HTTP...

    httpclient-4.5.12-API文档-中文版.zip

    Maven坐标:org.apache.httpcomponents:httpclient:4.5.12; 标签:apache、httpcomponents、httpclient、中文文档、jar包、java; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档...

    HttpClient4.5 实现https忽略SSL证书验证

    使用HttpClient4.5实现https请求忽略SSL证书验证工具类

    SecureBlackbox加载ssl代码.zip_blackbox ssl_delphi_official8gv_ssl_网络

    HTTPClient: TElHTTPClient; SSLContext: TElSSLContext; begin // 创建SSL上下文 SSLContext := TElSSLContext.Create(nil); SSLContext.UseDefaultCAStore := True; // 使用默认的证书权威机构存储 // ...

    httpclient-4.5.13-API文档-中文版.zip

    Maven坐标:org.apache.httpcomponents:httpclient:4.5.13; 标签:apache、httpcomponents、httpclient、jar包、java、中文文档; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档...

    HttpClient Https实战

    HttpClient库提供了SSLContext和SSLSocketFactory类,用于配置和管理SSL/TLS连接。我们可能需要创建并加载信任的证书,或者忽略证书错误以适应不同的环境需求。 配置HttpClient进行HTTPS连接通常包括以下步骤: 1. ...

    commons-httpclient-3.0.jar JAVA中使用HttpClient可以用到

    《JAVA中使用HttpClient:commons-httpclient-3.0.jar详解》 在JAVA开发中,进行HTTP请求时,Apache的HttpClient库是一个不可或缺的工具。本文将深入解析`commons-httpclient-3.0.jar`,它是HttpClient的一个重要...

    httpclient-4.5jar包

    《HttpClient 4.5详解与应用实践》 HttpClient是一个开源的Java库,由Apache软件基金会维护,主要用于在HTTP协议上实现客户端的通信。版本4.5是HttpClient的一个稳定版本,提供了许多增强的功能和优化,使其成为...

    HttpClient依赖jar包.zip

    4. **支持SSL/TLS**:HttpClient内置了对HTTPS的支持,可以处理SSL证书验证,确保数据传输的安全性。 5. **重试策略**:当网络不稳定或服务器短暂故障时,HttpClient可以设置重试策略,自动处理请求失败的情况。 6...

    httpclient 绕开HTTPS证书校验

    `SSLContext`是SSL/TLS安全套接层的核心,它负责管理和初始化SSL会话。`TrustManager`是负责验证服务器证书的接口。在默认情况下,`httpclient`会使用系统提供的`TrustManager`,这会严格检查服务器证书链是否可信任...

    httpclient-4.5.13-API文档-中英对照版.zip

    Maven坐标:org.apache.httpcomponents:httpclient:4.5.13; 标签:apache、httpcomponents、httpclient、jar包、java、中英对照文档; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览...

    可用org.apache.commons.httpclient-3.1.0.jar.zip

    import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.HttpException; import org.apache.commons.httpclient.HttpStatus; import org.apache.commons.httpclient.methods....

    java17 https 忽略ssl认证, httpclient5 ,springboot3.2.7 脚手架

    springboot3.2.7 基于java17 ,测试https 接口,基于 RestTemplate 实现

    commons-httpclient3.1.jar,commons-codec1.3.jar,commons-logging1.1.1.jar

    标题中的"commons-httpclient3.1.jar,commons-codec1.3.jar,commons-logging1.1.1.jar"指的是三个关键的Java库文件,它们是Apache HttpClient项目的一部分,用于在Java应用程序中实现HTTP通信。这些JAR(Java ...

    通过HTTPClient访问启用SSL的Quickr REST API

    2. 调整SSLContext,可能包括自定义的TrustManager,如`EasyX509TrustManager`。 3. 注册自定义的SocketFactory到`ProtocolRegistry`,以便`HttpClient`在处理HTTPS请求时使用。 接下来,`EasyX509TrustManager....

Global site tag (gtag.js) - Google Analytics