diff --git a/shenyu-admin/src/main/java/org/apache/shenyu/admin/utils/HttpUtils.java b/shenyu-admin/src/main/java/org/apache/shenyu/admin/utils/HttpUtils.java index e814fefc57f1..d82532897539 100644 --- a/shenyu-admin/src/main/java/org/apache/shenyu/admin/utils/HttpUtils.java +++ b/shenyu-admin/src/main/java/org/apache/shenyu/admin/utils/HttpUtils.java @@ -28,6 +28,7 @@ import okhttp3.RequestBody; import okhttp3.Response; import okhttp3.ResponseBody; +import okhttp3.internal.http.HttpMethod; import okhttp3.logging.HttpLoggingInterceptor; import okhttp3.logging.HttpLoggingInterceptor.Level; import org.apache.commons.codec.digest.DigestUtils; @@ -220,15 +221,16 @@ public String request(final String url, final Map form, final Map header) throws IOException { + final Map header, final HTTPMethod method) throws IOException { RequestBody body = RequestBody.create(MEDIA_TYPE_JSON, json); Request.Builder requestBuilder = new Request.Builder() .url(url) - .post(body); + .method(method.value(), HttpMethod.requiresRequestBody(method.value()) ? body : null); addHeader(requestBuilder, header); Request request = requestBuilder.build(); @@ -305,7 +307,7 @@ public Response requestCall(final String url, final Map form, final M if (Objects.nonNull(files) && !files.isEmpty()) { return requestFile(url, form, header, files); } else if (isJsonRequest(header)) { - return requestJson(url, JsonUtils.toJson(form), header); + return requestJson(url, JsonUtils.toJson(form), header, method); } else { return requestForResponse(url, form, header, method); }