httpclient中使用HTTPS的方法
2015-08-11 21:17
519 查看
httpclient中使用HTTPS的方法
博客分类: J***A相关
javasecurityssl
Java代码
import javax.net.ssl.SSLContext;
import javax.net.ssl.TrustManager;
import javax.net.ssl.X509TrustManager;
import java.security.cert.CertificateException;
import java.security.cert.X509Certificate;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.ResponseHandler;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.conn.ClientConnectionManager;
import org.apache.http.conn.scheme.Scheme;
import org.apache.http.conn.scheme.SchemeRegistry;
import org.apache.http.conn.scheme.SchemeSocketFactory;
import org.apache.http.conn.ssl.SSLSocketFactory;
import org.apache.http.impl.client.BasicResponseHandler;
import org.apache.http.impl.client.ClientParamsStack;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.params.DefaultedHttpParams;
import org.apache.http.params.HttpParams;
public class HttpClientTest {
public static void main(String args[]) {
try {
HttpClient httpclient = new DefaultHttpClient();
//Secure Protocol implementation.
SSLContext ctx = SSLContext.getInstance("SSL");
//Implementation of a trust manager for X509 certificates
X509TrustManager tm = new X509TrustManager() {
public void checkClientTrusted(X509Certificate[] xcs,
String string) throws CertificateException {
}
public void checkServerTrusted(X509Certificate[] xcs,
String string) throws CertificateException {
}
public X509Certificate[] getAcceptedIssuers() {
return null;
}
};
ctx.init(null, new TrustManager[] { tm }, null);
SSLSocketFactory ssf = new SSLSocketFactory(ctx);
ClientConnectionManager ccm = httpclient.getConnectionManager();
//register https protocol in httpclient's scheme registry
SchemeRegistry sr = ccm.getSchemeRegistry();
sr.register(new Scheme("https", 443, ssf));
HttpGet httpget = new HttpGet("");
HttpParams params = httpclient.getParams();
params.setParameter("param1", "paramValue1");
httpget.setParams(params);
System.out.println("REQUEST:" + httpget.getURI());
ResponseHandler responseHandler = new BasicResponseHandler();
String responseBody;
responseBody = httpclient.execute(httpget, responseHandler);
System.out.println(responseBody);
// Create a response handler
} catch (NoSuchAlgorithmException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
分享到:
jquery 中的一个函数one讲解 | (转)关于pdflush进程
2012-07-25 08:42
相关文章推荐
- HttpClient连接网页,Jsoup解析网页
- linux/unix网络编程之 select
- Android异步加载学习笔记之四:利用缓存优化网络加载图片及ListView加载优化
- 网络编程第二篇
- Linux服务器网络开发模型
- 用Java的HttpClient写一个简单的http请求和返回
- HTTP请求详解
- HDU 4309 Seikimatsu Occult Tonneru 网络流量+像缩进
- 利用【深度网络】高效提取feature
- iOS项目开发实战——iOS网络编程获取网页Html源代码
- 网络流
- 游戏服务器逻辑分析TCP+P2P
- 黑马程序员————网络编程
- 面试复习重点——基础篇:操作系统、计算机网络、设计模式【山科大牛陈磊整理】
- tcp3次握手和4次挥手全过程
- 完美配置Tomcat的HTTPS
- 网络安全
- BP神经网络对音频分类
- 接口传递网络请求结果
- 网络篇----解析json