java 实现HTTP连接(HTTPClient)

Posted 黑化何

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 实现HTTP连接(HTTPClient)相关的知识,希望对你有一定的参考价值。

  在实习中,使用到了http连接,一直理解的很模糊,特地写个分析整理篇。分析不到位的地方请多多指教。

  Http 目前通用版本为 http 1.1 。

  Http连接大致分为2种常用的请求——GET,POST

  一.基本流程(使用httpClient)

  GET{

  1.新建HttpClient 对象 ——HttpClient http = HttpClients.createDefault();

  2.创建GET 请求——HttpGet get = new HttpGet(url——接口地址/请求路径);

  3.获取响应——HttpResponse resp = http.execute(get);

  4.获取响应实体 —— HttpEntity entity = resp.getEntity();

  5.新建结果对象String ——String result = EntityUtils.toString(entity,"utf-8");

  6.打印——System.out.print("结果是:"+result);

  }

 

  POST{

  1.新建HttpClient 对象 ——HttpClient http = HttpClients.createDefault();

  2.创建POST请求——HttpPost post = new HttpPost(url——接口地址/请求路径);

  3.创建一个List容器,存放基本的键值对——{

                      List<BasicNameValuePair> params = new ArrayLIst<>(); 

                      params.add(键值对1);

                      params.add(键值对2);

                      }

  4.在请求中添加消息实体——post.setEntity(new UrlEncodedFormEntity(params,"utf-8"));

  5.获取响应——HttpResponse resp = http.execute(post);

  6.获取响应实体—— HttpEntity entity = resp.getEntity();

  7.新建结果对象——String result = EntityUtils.toString(entity,"utf-8");

  8.打印——System.out.print("结果是:"+result);

  }

 

暂时是这么一回事。

 

以上是关于java 实现HTTP连接(HTTPClient)的主要内容,如果未能解决你的问题,请参考以下文章

HttpClient 基于连接池的使用

HTTPClient-java.net.SocketException:未实现未连接的套接字抛出

HttpComponents HttpClient连接池-结构

使用 HttpClient 的 HTTP 连接池

HttpClient连接池耗尽引发雪崩问题

Http 持久连接与 HttpClient 连接池