HttpClient的用法
来源:互联网 发布:淘宝联盟微博设置方法 编辑:程序博客网 时间:2024/05/16 12:15
1.1. 功能介绍
以下列出的是 HttpClient 提供的主要的功能,要知道更多详细的功能可以参见 HttpClient 的主页。
(1)实现了所有 HTTP 的方法(GET,POST,PUT,HEAD 等)
(2)支持自动转向
(3)支持 HTTPS 协议
(4)支持代理服务器等
1.1. 项目依赖
<dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactid> <version>4.3.5</version></dependency>1.2 封装成工具类
public class HttpClientUtil {public static String doGet(String url, Map<String, String> param) {// 创建Httpclient对象CloseableHttpClient httpclient = HttpClients.createDefault();String resultString = "";CloseableHttpResponse response = null;try {// 创建uriURIBuilder builder = new URIBuilder(url);if (param != null) {for (String key : param.keySet()) {builder.addParameter(key, param.get(key));}}URI uri = builder.build();// 创建http GET请求HttpGet httpGet = new HttpGet(uri);// 执行请求response = httpclient.execute(httpGet);// 判断返回状态是否为200if (response.getStatusLine().getStatusCode() == 200) {resultString = EntityUtils.toString(response.getEntity(), "UTF-8");}} catch (Exception e) {e.printStackTrace();} finally {try {if (response != null) {response.close();}httpclient.close();} catch (IOException e) {e.printStackTrace();}}return resultString;}public static String doGet(String url) {return doGet(url, null);}public static String doPost(String url, Map<String, String> param) {// 创建Httpclient对象CloseableHttpClient httpClient = HttpClients.createDefault();CloseableHttpResponse response = null;String resultString = "";try {// 创建Http Post请求HttpPost httpPost = new HttpPost(url);// 创建参数列表if (param != null) {List<NameValuePair> paramList = new ArrayList<>();for (String key : param.keySet()) {paramList.add(new BasicNameValuePair(key, param.get(key)));}// 模拟表单UrlEncodedFormEntity entity = new UrlEncodedFormEntity(paramList);httpPost.setEntity(entity);}// 执行http请求response = httpClient.execute(httpPost);resultString = EntityUtils.toString(response.getEntity(), "utf-8");} catch (Exception e) {e.printStackTrace();} finally {try {response.close();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}return resultString;}public static String doPost(String url) {return doPost(url, null);}}
阅读全文
0 0
- HttpClient的用法
- HttpClient的用法
- httpClient的用法
- HttpClient的用法
- HttpClient的用法小结
- HttpClient的一些用法
- HttpClient的用法
- HttpClient的用法
- HttpClient的基本用法
- HttPClient的POST用法
- HttpClient的用法
- HttpClient的用法
- HttpClient的超时用法小记
- HttpClient的超时用法小记
- HttpClient的超时用法小记
- HttpClient的超时用法小记
- HttpClient的超时用法小记
- HttpClient的超时用法小记
- 模式开始
- 将module app文件转成library文件
- orical从一张表中查出id,循环放进另一种表中,主键uuid
- Spring4.3完整的XSD声明
- ROS 利用bag 数据建图
- HttpClient的用法
- 哗啦啦啦啦啦啦啦啦啦啦啦
- Java内部类
- tomcat的虚拟目录的映射
- gitlab忘记管理员的密码解决方法
- Android那些事儿之自定义进度条
- java.lang.ClassNotFoundException: com.mysql.jdbc.Driver 的解决办法
- nginx+uwsgi+Django配置
- python 解返回Json 为字典