From 3127b6fcd79cf2ff8195889ea5d42cc73419f12d Mon Sep 17 00:00:00 2001 From: "pengfei.zhou" Date: Mon, 9 Dec 2019 21:03:44 +0800 Subject: [PATCH] feat:fix network plugin --- .../src/main/java/pub/doric/plugin/NetworkPlugin.java | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/doric/src/main/java/pub/doric/plugin/NetworkPlugin.java b/doric/src/main/java/pub/doric/plugin/NetworkPlugin.java index ec36fb34..072d5cd0 100644 --- a/doric/src/main/java/pub/doric/plugin/NetworkPlugin.java +++ b/doric/src/main/java/pub/doric/plugin/NetworkPlugin.java @@ -17,7 +17,6 @@ package pub.doric.plugin; import android.text.TextUtils; -import com.github.pengfeizhou.jscore.JSDecoder; import com.github.pengfeizhou.jscore.JSONBuilder; import com.github.pengfeizhou.jscore.JSObject; import com.github.pengfeizhou.jscore.JSValue; @@ -51,7 +50,8 @@ import pub.doric.extension.bridge.DoricPromise; */ @DoricPlugin(name = "network") public class NetworkPlugin extends DoricJavaPlugin { - private OkHttpClient okHttpClient = new OkHttpClient(); + private OkHttpClient okHttpClient = new OkHttpClient.Builder() + .build(); public NetworkPlugin(DoricContext doricContext) { super(doricContext); @@ -79,9 +79,10 @@ public class NetworkPlugin extends DoricJavaPlugin { MediaType mediaType = MediaType.parse(TextUtils.isEmpty(contentType) ? "application/json; charset=utf-8" : contentType); RequestBody requestBody = HttpMethod.permitsRequestBody(method) ? RequestBody.create(mediaType, dataVal.isString() ? dataVal.asString().value() : "") : null; Request.Builder requestBuilder = new Request.Builder(); - requestBuilder.url(url) - .headers(headers) - .method(method, requestBody); + requestBuilder = requestBuilder.url(url).headers(headers); + if (HttpMethod.permitsRequestBody(method.toUpperCase())) { + requestBuilder = requestBuilder.method(method, requestBody); + } if (timeoutVal.isNumber() && okHttpClient.connectTimeoutMillis() != timeoutVal.asNumber().toLong()) { okHttpClient = okHttpClient.newBuilder().connectTimeout(timeoutVal.asNumber().toLong(), TimeUnit.MILLISECONDS).build(); }