天天看点

HTTP客户端连接

文章目录

      • 使用 HttpClient 发送请求主要分为一下几步骤:
      • 使用 OkHttp 发送请求主要分为一下几步骤:

使用 HttpClient 发送请求主要分为一下几步骤:

  • 创建 CloseableHttpClient 对象或 CloseableHttpAsyncClient 对象,前者同步,后者为异步
  • 创建 Http 请求对象
  • 调用 execute 方法执行请求,如果是异步请求在执行之前需调用 start 方法
String host = HOST;地址
            String path = PATH;//路径
            String method =METHOD;//方法类型
            Map<String, String> headers = new HashMap<String, String>();
            headers.put("Authorization", "APPCODE " + APPCODE);
            Map<String, String> querys = new HashMap<String, String>();
            querys.put("name",name);
            querys.put("password", password);


 /**
     * get
     *
     * @param host
     * @param path
     * @param method
     * @param headers
     * @param querys
     * @return
     * @throws Exception
     */
    public static HttpResponse doGet(String host, String path, String method,
                                     Map<String, String> headers,
                                     Map<String, String> querys)
            throws Exception {
        HttpClient httpClient = wrapClient(host);

        HttpGet request = new HttpGet(buildUrl(host, path, querys));
        for (Map.Entry<String, String> e : headers.entrySet()) {
            request.addHeader(e.getKey(), e.getValue());
        }

        return httpClient.execute(request);
    }
           

使用 OkHttp 发送请求主要分为一下几步骤:

  • 创建 OkHttpClient 对象
  • 创建 Request 对象
  • 将 Request 对象封装为 Call
  • 通过 Call 来执行同步或异步请求,调用 execute 方法同步执行,调用 enqueue 方法异步执行