首页域名资讯 正文

JAVA连接HTTPS – HTTPS SSL 教程

2024-10-07 8 0条评论

使用Apache的HttpClient 和 HttpCore

https://hc.apache.org

package cn.get ssl .https;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import trustauth.cn.ssl.SSLContext;
import org.apache.http.HttpEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
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.SSLContexts;
import org.apache.http.util.EntityUtils;
public class ConnectionHttps {
public static void main(String[] args) throws Exception {
// TODO Auto-generated method stub
SSLContext sslcontext = SSLContexts.createSystemDefault();
// Allow TLSv1 protocol only
SSLConnectionSocketFactory sslsf = new SSLConnectionSocketFactory(
sslcontext,
new String[] { "TLSv1" },
null,
SSLConnectionSocketFactory.getDefaultHostnameVerifier());
CloseableHttpClient httpclient = HttpClients.custom()
.setSSLSocketFactory(sslsf)
.build();
try {
HttpGet httpget = new HttpGet("https://www.baidu.com/");
System.out.println("Executing request " + httpget.getRequestLine());
CloseableHttpResponse response = httpclient.execute(httpget);
try {
HttpEntity entity = response.getEntity();
BufferedReader in = new BufferedReader(new InputStreamReader(entity.getContent()));
while(in.ready()){
System.out.println(in.readLine());
}
System.out.println("----------------------------------------");
System.out.println(response.getStatusLine());
EntityUtils.consume(entity);
} finally {
response.close();
}
} finally {
httpclient.close();
}
}
}

 

文章版权及转载声明

本文作者:亿网 网址:https://www.edns.com/ask/post/149986.html 发布于 2024-10-07
文章转载或复制请以超链接形式并注明出处。