Java httpUtil工具类

时间:2025-02-15 07:31:18
public class HttpUtil { /** * post请求TB * @param head 请求头 * @param body 请求体 * @param url 请求路径 */ @SneakyThrows public static JSONObject httpPost(Map<String,String> head, Map<String,Object> body,String url){ //将body,键值对转换成JSON对象,如果访问调用的接口不需要JSON,可以使用如下add()添加键值对。 // RequestBody requestBody = new ().add() RequestBody requestBody = RequestBody.create(MediaType.parse("application/json; charset=utf-8"),new JSONObject(body).toString()); OkHttpClient client = new OkHttpClient().newBuilder() .build(); Request request = new Request.Builder() .url(url) .headers(Headers.of(head)) .method("POST", requestBody) .build(); Response response = client.newCall(request).execute(); JSONObject jsonObject = (JSONObject)JSONObject.parse(response.body().string()); return jsonObject; } /** * get请求TB * @param head 请求头 * @param url 请求路径 */ @SneakyThrows public static JSONObject httpGet(Map<String,String> head,String url){ OkHttpClient client = new OkHttpClient().newBuilder() .build(); Request request = new Request.Builder() .url(url) .headers(Headers.of(head)) .method("GET", null) .build(); Response response = client.newCall(request).execute(); JSONObject jsonObject = (JSONObject)JSONObject.parse(response.body().string()); return jsonObject; } /** * * @param url 请求的接口地址 * @param params 入参map * @return 如果是get请求,路径需要拼接查询参数,可通过如下方法拼接 */ public static String getUrl(String url, Map<String, ?> params){ StringBuilder paramSplice = new StringBuilder(); paramSplice.append(url).append("?"); params.forEach((key, value) -> paramSplice.append(key).append("=").append(value).append("&")); return paramSplice.toString(); } }