从HttpClient 4.0版本开始,包中的不少方法已过时(deprecated),过时的方法我们一般就不再使用了。现在我向大家介绍如何利用apache提供的HttpClient最新jar包实现http与https的请求
前期准备工作(包括相关工具或所使用的原料等)Intellij IDEA 14.1.4HttpClient-4.5.jar等一系列的工具包 详细的操作方法或具体步骤
http实现get请求:
首先设置全局的标准cookie策略
RequestConfig config=RequestConfig.custom().setCookieSpec(CookieSpecs.STANDARD_STRICT).build();
设置可关闭的httpclient
CloseableHttpClient httpClient=HttpClients.custom().setDefaultRequestConfig(config).build();
发送get请求

http实现post请求:
首先设置全局的标准cookie策略
RequestConfig config=RequestConfig.custom().setCookieSpec(CookieSpecs.STANDARD_STRICT).build();
设置可关闭的httpclient
CloseableHttpClient httpClient=HttpClients.custom().setDefaultRequestConfig(config).build();
对请求参数进行编码后再进行发送

https网站一般情况下使用了安全系数较低的SHA-1签名,因此首先我们在调用SSL之前需要重写验证方法,取消检测SSL。

https实现get请求:
创建可用Scheme
Registry
创建ConnectionManager,添加Connection配置信息
PoolingHttpClientConnectionManager connectionManager=new PoolingHttpClientConnectionManager(socketFactoryRegistry);CloseableHttpClient httpClient=HttpClients.custom().setConnectionManager(connectionManager) .setDefaultRequestConfig(defaultRequestConfig).build();
发送get请求

https实现post请求:
创建可用Scheme
Registry
创建ConnectionManager,添加Connection配置信息
PoolingHttpClientConnectionManager connectionManager=new PoolingHttpClientConnectionManager(socketFactoryRegistry);CloseableHttpClient httpClient=HttpClients.custom().setConnectionManager(connectionManager) .setDefaultRequestConfig(defaultRequestConfig).build();
对请求参数进行编码后再进行发送

注意事项调用上面的方法得到response对象后,利用EntityUtils.toString(response.getEntity())可获取到响应数据,同时不要忘了在使用完后关闭,一般我们直接用try(){}的方式自动关闭经验内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士。作者声明:本教程系本人依照真实经历原创,未经许可,谢绝转载。
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
