httpClient4.3发送https请求

来源:互联网 发布:淘宝评论没有了 编辑:程序博客网 时间:2024/06/06 17:05

首先创建一个工具类:

public class HttpClientUtil {public static CloseableHttpClient createSSLClientDefault() {try {SSLContext sslContext = new SSLContextBuilder().loadTrustMaterial(null, new TrustStrategy() {// 信任所有public boolean isTrusted(X509Certificate[] chain,String authType) throws CertificateException {return true;}}).build();SSLConnectionSocketFactory sslsf = new SSLConnectionSocketFactory(sslContext);return HttpClients.custom().setSSLSocketFactory(sslsf).build();} catch (KeyManagementException e) {e.printStackTrace();} catch (NoSuchAlgorithmException e) {e.printStackTrace();} catch (KeyStoreException e) {e.printStackTrace();}return HttpClients.createDefault();}}

在自己的程序中调用:

public static void main(String[] args) throws Exception {CloseableHttpClient client = HttpClientUtil.createSSLClientDefault();HttpGet get = new HttpGet("https://kyfw.12306.cn/otn/leftTicket/query?leftTicketDTO.train_date=2014-06-18&leftTicketDTO.from_station=WHN&leftTicketDTO.to_station=IZQ&purpose_codes=ADULT");CloseableHttpResponse response = client.execute(get);HttpEntity entity = response.getEntity();InputStream input = entity.getContent();OutputStream output = new FileOutputStream("D:/dat.txt");int len = 0;byte[] buff = new byte[1024];while(-1!=(len = input.read(buff))){output.write(buff, 0,len);}}


0 0
原创粉丝点击