以下是 OkHttp 封装工具类中 GET/POST form/Post JSON/DELETE 各种请求方法的组装参数方式:

  1. GET 方法:
public static void sendGetRequest(String url, Map<String, String> params, Callback callback) {
    HttpUrl.Builder urlBuilder = HttpUrl.parse(url).newBuilder();

    if (params != null && !params.isEmpty()) {
        for (Map.Entry<String, String> entry : params.entrySet()) {
            urlBuilder.addQueryParameter(entry.getKey(), entry.getValue());
        }
    }

    String requestUrl = urlBuilder.build().toString();

    Request request = new Request.Builder()
            .url(requestUrl)
            .get()
            .build();

    OkHttpClient client = new OkHttpClient();
    client.newCall(request).enqueue(callback);
}
  1. POST form 方法:
public static void sendPostFormRequest(String url, Map<String, String> params, Callback callback) {
    FormBody.Builder formBuilder = new FormBody.Builder();

    if (params != null && !params.isEmpty()) {
        for (Map.Entry<String, String> entry : params.entrySet()) {
            formBuilder.add(entry.getKey(), entry.getValue());
        }
    }

    Request request = new Request.Builder()
            .url(url)
            .post(formBuilder.build())
            .build();

    OkHttpClient client = new OkHttpClient();
    client.newCall(request).enqueue(callback);
}
  1. POST JSON 方法:
public static void sendPostJsonRequest(String url, String json, Callback callback) {
    RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), json);

    Request request = new Request.Builder()
            .url(url)
            .post(requestBody)
            .build();

    OkHttpClient client = new OkHttpClient();
    client.newCall(request).enqueue(callback);
}
  1. DELETE 方法:
public static void sendDeleteRequest(String url, Map<String, String> params, Callback callback) {
    HttpUrl.Builder urlBuilder = HttpUrl.parse(url).newBuilder();

    if (params != null && !params.isEmpty()) {
        for (Map.Entry<String, String> entry : params.entrySet()) {
            urlBuilder.addQueryParameter(entry.getKey(), entry.getValue());
        }
    }

    String requestUrl = urlBuilder.build().toString();

    Request request = new Request.Builder()
            .url(requestUrl)
            .delete()
            .build();

    OkHttpClient client = new OkHttpClient();
    client.newCall(request).enqueue(callback);
}

以上就是 OkHttp 封装工具类中 GET/POST form/Post JSON/DELETE 各种请求方法的组装参数方式。需要注意的是,参数的组装方式可能因具体需求而略有不同,上述仅为参考

OkHttp 封装工具类GETPOST formPost JSONDELETE各种请求方法要怎么组装参数

原文地址: https://www.cveoy.top/t/topic/fDZp 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录