HttpToolKit.java 8.25 KB
package com.pipi.qa.framework.tools;

import com.alibaba.fastjson.JSONObject;
import com.pipi.qa.framework.bean.HttpConfig;
import com.pipi.qa.framework.utils.http.HttpMethod;
import com.pipi.qa.framework.utils.http.HttpRequest;
import com.pipi.qa.framework.utils.http.HttpResponse;
import com.pipi.qa.framework.utils.http.HttpUtil;
import com.pipi.qa.framework.utils.http.UrlWrapper;

import java.util.Map;

public class HttpToolKit {

  public static String getUrlHost(String url) {
    return new UrlWrapper(url).getHost();
  }

  public static int getUrlPort(String url) {
    return new UrlWrapper(url).getPort();
  }

  /**
   * 模拟发送HTTP GET请求
   *
   * @return HttpResponse
   */
  public static HttpResponse invokeGet(String url) {
    HttpUtil HttpUtil = new HttpUtil();
    HttpRequest request = new HttpRequest(url, HttpMethod.GET);
    return HttpUtil.execute(request, null);
  }

  /**
   * 模拟发送HTTP GET请求
   *
   * @return HttpResponse
   */
  public static HttpResponse invokeGet(String url, Map<String, Object> headers,
      Map<String, Object> params) {
    HttpUtil HttpUtil = new HttpUtil();
    HttpRequest request = new HttpRequest(url, HttpMethod.GET, headers, params);
    return HttpUtil.execute(request, null);
  }

  /**
   * 模拟发送HTTP GET请求
   *
   * @return HttpResponse
   */
  public static HttpResponse invokeGet(String url, HttpConfig httpConfig) {
    HttpUtil HttpUtil = new HttpUtil();
    HttpRequest request = new HttpRequest(url, HttpMethod.GET);
    return HttpUtil.execute(request, httpConfig);
  }

  /**
   * 模拟发送HTTP GET请求
   *
   * @return HttpResponse
   */
  public static HttpResponse invokeGet(String url, Map<String, Object> headers,
      Map<String, Object> params, HttpConfig httpConfig) {
    HttpUtil HttpUtil = new HttpUtil();
    HttpRequest request = new HttpRequest(url, HttpMethod.GET, headers, params);
    return HttpUtil.execute(request, httpConfig);
  }

  /**
   * 模拟发送HTTP POST请求
   *
   * @return HttpResponse
   */
  public static HttpResponse invokePost(String url, Map<String, Object> headers,
      Map<String, Object> params) {
    HttpUtil HttpUtil = new HttpUtil();
    HttpRequest request = new HttpRequest(url, HttpMethod.POST, headers, params);
    return HttpUtil.execute(request, null);
  }

  /**
   * 模拟发送HTTP POST请求
   *
   * @return HttpResponse
   */
  public static HttpResponse invokePostString(String url, Map<String, Object> headers,
      String content) {
    HttpUtil HttpUtil = new HttpUtil();
    HttpRequest request = new HttpRequest(url, HttpMethod.POST, headers, content);
    return HttpUtil.execute(request, null);
  }

  /**
   * 模拟发送HTTP POST请求
   *
   * @return HttpResponse
   */
  public static HttpResponse invokePostJson(String url, Map<String, Object> headers,
      Object object) {
    HttpUtil HttpUtil = new HttpUtil();
    HttpRequest request = null;
    if (object != null) {
      request = new HttpRequest(url, HttpMethod.POST, headers, JSONObject.toJSONString(object));
    } else {
      request = new HttpRequest(url, HttpMethod.POST, headers, "");
    }
    return HttpUtil.execute(request, null);
  }

  /**
   * 模拟发送HTTP POST请求
   *
   * @return HttpResponse
   */
  public static HttpResponse invokePost(String url, Map<String, Object> headers,
      Map<String, Object> params, HttpConfig httpConfig) {
    HttpUtil HttpUtil = new HttpUtil();
    HttpRequest request = new HttpRequest(url, HttpMethod.POST, headers, params);
    return HttpUtil.execute(request, httpConfig);
  }

  /**
   * 模拟发送HTTP POST请求
   *
   * @return HttpResponse
   */
  public static HttpResponse invokePostString(String url, Map<String, Object> headers,
      String content, HttpConfig httpConfig) {
    HttpUtil HttpUtil = new HttpUtil();
    HttpRequest request = new HttpRequest(url, HttpMethod.POST, headers, content);
    return HttpUtil.execute(request, httpConfig);
  }

  /**
   * 模拟发送HTTP POST请求
   *
   * @return HttpResponse
   */
  public static HttpResponse invokePostJson(String url, Map<String, Object> headers,
      Object object, HttpConfig httpConfig) {
    HttpUtil HttpUtil = new HttpUtil();
    HttpRequest request = null;
    if (object != null) {
      request = new HttpRequest(url, HttpMethod.POST, headers, JSONObject.toJSONString(object));
    } else {
      request = new HttpRequest(url, HttpMethod.POST, headers, "");
    }
    return HttpUtil.execute(request, httpConfig);
  }

  /**
   * 模拟发送HTTP Delete请求
   *
   * @return HttpResponse
   */
  public static HttpResponse invokeDelete(String url) {
    HttpUtil HttpUtil = new HttpUtil();
    HttpRequest request = new HttpRequest(url, HttpMethod.DELETE);
    return HttpUtil.execute(request, null);
  }

  /**
   * 模拟发送HTTP Delete请求
   *
   * @return HttpResponse
   */
  public static HttpResponse invokeDelete(String url, Map<String, Object> headers,
      Map<String, Object> params) {
    HttpUtil HttpUtil = new HttpUtil();
    HttpRequest request = new HttpRequest(url, HttpMethod.DELETE, headers, params);
    return HttpUtil.execute(request, null);
  }


  /**
   * 模拟发送HTTP Delete请求
   *
   * @return HttpResponse
   */
  public static HttpResponse invokeDelete(String url, HttpConfig httpConfig) {
    HttpUtil HttpUtil = new HttpUtil();
    HttpRequest request = new HttpRequest(url, HttpMethod.DELETE);
    return HttpUtil.execute(request, httpConfig);
  }

  /**
   * 模拟发送HTTP Delete请求
   *
   * @return HttpResponse
   */
  public static HttpResponse invokeDelete(String url, Map<String, Object> headers,
      Map<String, Object> params, HttpConfig httpConfig) {
    HttpUtil HttpUtil = new HttpUtil();
    HttpRequest request = new HttpRequest(url, HttpMethod.DELETE, headers, params);
    return HttpUtil.execute(request, httpConfig);
  }

  /**
   * 模拟发送HTTP Put请求
   *
   * @return HttpResponse
   */
  public static HttpResponse invokePut(String url, Map<String, Object> headers,
      Map<String, Object> params) {
    HttpUtil HttpUtil = new HttpUtil();
    HttpRequest request = new HttpRequest(url, HttpMethod.PUT, headers, params);
    return HttpUtil.execute(request, null);
  }

  /**
   * 模拟发送HTTP Put请求
   *
   * @return HttpResponse
   */
  public static HttpResponse invokePutString(String url, Map<String, Object> headers,
      String content) {
    HttpUtil HttpUtil = new HttpUtil();
    HttpRequest request = new HttpRequest(url, HttpMethod.PUT, headers, content);
    return HttpUtil.execute(request, null);
  }

  /**
   * 模拟发送HTTP Put请求
   *
   * @return HttpResponse
   */
  public static HttpResponse invokePutJson(String url, Map<String, Object> headers, Object object) {
    HttpUtil HttpUtil = new HttpUtil();
    HttpRequest request = null;
    if (object != null) {
      request = new HttpRequest(url, HttpMethod.PUT, headers, JSONObject.toJSONString(object));
    } else {
      request = new HttpRequest(url, HttpMethod.PUT, headers, "");
    }
    return HttpUtil.execute(request, null);
  }

  /**
   * 模拟发送HTTP Put请求
   *
   * @return HttpResponse
   */
  public static HttpResponse invokePut(String url, Map<String, Object> headers,
      Map<String, Object> params, HttpConfig httpConfig) {
    HttpUtil HttpUtil = new HttpUtil();
    HttpRequest request = new HttpRequest(url, HttpMethod.PUT, headers, params);
    return HttpUtil.execute(request, httpConfig);
  }

  /**
   * 模拟发送HTTP Put请求
   *
   * @return HttpResponse
   */
  public static HttpResponse invokePutString(String url, Map<String, Object> headers,
      String content, HttpConfig httpConfig) {
    HttpUtil HttpUtil = new HttpUtil();
    HttpRequest request = new HttpRequest(url, HttpMethod.PUT, headers, content);
    return HttpUtil.execute(request, httpConfig);
  }

  /**
   * 模拟发送HTTP Put请求
   *
   * @return HttpResponse
   */
  public static HttpResponse invokePutJson(String url, Map<String, Object> headers, Object object,
      HttpConfig httpConfig) {
    HttpUtil HttpUtil = new HttpUtil();
    HttpRequest request = null;
    if (object != null) {
      request = new HttpRequest(url, HttpMethod.PUT, headers, JSONObject.toJSONString(object));
    } else {
      request = new HttpRequest(url, HttpMethod.PUT, headers, "");
    }
    return HttpUtil.execute(request, httpConfig);
  }
}