diff --git a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/http/SimpleHttpClient.java b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/http/SimpleHttpClient.java index fc9c85a8..264ed782 100644 --- a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/http/SimpleHttpClient.java +++ b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/http/SimpleHttpClient.java @@ -127,10 +127,12 @@ public class SimpleHttpClient implements HttpClient { if (request instanceof HttpEntityRequest) { httpEntity = ((HttpEntityRequest) request).getEntity(); connection.setUseCaches(false); - connection.setFixedLengthStreamingMode(httpEntity - .getContentLength()); - connection.setRequestProperty("Content-Type", httpEntity - .getContentType().getMimeType()); + if (httpEntity != null) { + connection.setFixedLengthStreamingMode(httpEntity + .getContentLength()); + connection.setRequestProperty("Content-Type", httpEntity + .getContentType().getMimeType()); + } } connection.connect(); // open stream diff --git a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/http/weixin/WeixinHttpClient.java b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/http/weixin/WeixinHttpClient.java index 2c2c02f1..1203b080 100644 --- a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/http/weixin/WeixinHttpClient.java +++ b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/http/weixin/WeixinHttpClient.java @@ -23,6 +23,7 @@ import com.foxinmy.weixin4j.http.entity.ByteArrayEntity; import com.foxinmy.weixin4j.http.entity.FileEntity; import com.foxinmy.weixin4j.http.entity.FormUrlEntity; import com.foxinmy.weixin4j.http.entity.StringEntity; +import com.foxinmy.weixin4j.model.Consts; import com.foxinmy.weixin4j.util.ErrorUtil; import com.foxinmy.weixin4j.util.MapUtil; import com.foxinmy.weixin4j.util.StringUtil; @@ -194,6 +195,7 @@ public class WeixinHttpClient extends SimpleHttpClient { .replaceFirst("", "") .replaceFirst("", ""); xmlResult = XmlStream.get(newXml, XmlResult.class); + response.setContent(newXml.getBytes(Consts.UTF_8)); } response.setXmlResult(true); if (xmlResult.getReturnCode().equals("0")) { diff --git a/weixin4j-mp/src/main/java/com/foxinmy/weixin4j/mp/api/CustomApi.java b/weixin4j-mp/src/main/java/com/foxinmy/weixin4j/mp/api/CustomApi.java index c31688be..73d5708a 100644 --- a/weixin4j-mp/src/main/java/com/foxinmy/weixin4j/mp/api/CustomApi.java +++ b/weixin4j-mp/src/main/java/com/foxinmy/weixin4j/mp/api/CustomApi.java @@ -101,12 +101,12 @@ public class CustomApi extends MpApi { String text = ""; if (isOnline) { String getonlinekflist_uri = getRequestUri("getonlinekflist_uri"); - WeixinResponse response = weixinClient.post(String.format(getonlinekflist_uri, + WeixinResponse response = weixinClient.get(String.format(getonlinekflist_uri, token.getAccessToken())); text = response.getAsJson().getString("kf_online_list"); } else { String getkflist_uri = getRequestUri("getkflist_uri"); - WeixinResponse response = weixinClient.post(String.format(getkflist_uri, + WeixinResponse response = weixinClient.get(String.format(getkflist_uri, token.getAccessToken())); text = response.getAsJson().getString("kf_list"); }