重新整理HttpClinet & 新增OkHttp实现

This commit is contained in:
jinyu
2016-07-30 14:56:27 +08:00
parent e9cd349c8c
commit 5ea7fee142
62 changed files with 1913 additions and 844 deletions
@@ -234,7 +234,6 @@ public class MediaApi extends MpApi {
request = new HttpRequest(HttpMethod.GET,
String.format(meida_download_uri, token.getAccessToken(), mediaId));
}
request.setParams(weixinExecutor.getExecuteParams());
logger.info("weixin request >> " + request.getMethod() + " " + request.getURI().toString());
HttpResponse response = weixinExecutor.getExecuteClient().execute(request);
byte[] content = IOUtil.toByteArray(response.getBody());
@@ -26,10 +26,9 @@ import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.TypeReference;
import com.alibaba.fastjson.parser.Feature;
import com.foxinmy.weixin4j.exception.WeixinException;
import com.foxinmy.weixin4j.http.entity.FormUrlEntity;
import com.foxinmy.weixin4j.http.message.ApiResult;
import com.foxinmy.weixin4j.http.weixin.WeixinRequestExecutor;
import com.foxinmy.weixin4j.http.weixin.WeixinResponse;
import com.foxinmy.weixin4j.http.weixin.WeixinSSLRequestExecutor;
import com.foxinmy.weixin4j.model.Consts;
import com.foxinmy.weixin4j.model.Token;
import com.foxinmy.weixin4j.mp.oldpayment.OrderV2;
@@ -312,10 +311,9 @@ public class PayOldApi extends MpApi {
ctx = SSLContext.getInstance(Consts.TLS);
ctx.init(kmf.getKeyManagers(), tmf.getTrustManagers(),
new SecureRandom());
WeixinRequestExecutor weixinExecutor = new WeixinSSLRequestExecutor(
ctx);
response = weixinExecutor.get(refund_uri, map);
response = weixinExecutor.createSSLRequestExecutor(ctx).get(
String.format("%s?%s", refund_uri,
FormUrlEntity.formatParameters(map)));
} catch (WeixinException e) {
throw e;
} catch (Exception e) {
@@ -459,7 +457,8 @@ public class PayOldApi extends MpApi {
map.put("key", weixinAccount.getPartnerKey());
String sign = DigestUtil.MD5(MapUtil.toJoinString(map, false, false));
map.put("sign", sign.toLowerCase());
WeixinResponse response = weixinExecutor.get(downloadbill_uri, map);
WeixinResponse response = weixinExecutor.get(String.format("%s?%s",
downloadbill_uri, FormUrlEntity.formatParameters(map)));
BufferedReader reader = null;
BufferedWriter writer = null;
try {
@@ -510,7 +509,8 @@ public class PayOldApi extends MpApi {
map.put(idQuery.getType().getName(), idQuery.getId());
String sign = weixinMD5Signature.sign(map);
map.put("sign", sign.toLowerCase());
WeixinResponse response = weixinExecutor.get(refundquery_uri, map);
WeixinResponse response = weixinExecutor.get(String.format(
refundquery_uri, FormUrlEntity.formatParameters(map)));
return ListsuffixResultDeserializer.deserialize(response.getAsString(),
RefundRecordV2.class);
}
@@ -1,6 +1,5 @@
package com.foxinmy.weixin4j.mp.model;
import com.alibaba.fastjson.annotation.JSONCreator;
import com.alibaba.fastjson.annotation.JSONField;
import com.foxinmy.weixin4j.model.Token;
@@ -93,13 +93,13 @@ public class NotifyTest extends TokenTest {
@Test
public void send2() throws WeixinException, IOException {
File file = new File("/tmp/test.jpg");
File file = new File("/Users/jy/Downloads/weixin4j.png");
MediaUploadResult mediaResult = mediaApi.uploadMedia(false,
new FileInputStream(file), file.getName());
NotifyMessage imageNotify = new NotifyMessage(
"owGBft_vbBbOaQOmpEUE4xDLeRSU", new Image(
mediaResult.getMediaId()));
ApiResult result = notifyApi.sendNotify(imageNotify);
Assert.assertEquals(0, result.getReturnCode());
Assert.assertEquals("0", result.getReturnCode());
}
}