|
|
@@ -1,10 +1,12 @@ |
|
|
|
package me.chanjar.weixin.mp.util.http; |
|
|
|
|
|
|
|
import me.chanjar.weixin.common.bean.result.WxError; |
|
|
|
import me.chanjar.weixin.common.exception.WxErrorException; |
|
|
|
import me.chanjar.weixin.common.util.http.InputStreamResponseHandler; |
|
|
|
import me.chanjar.weixin.common.util.http.RequestExecutor; |
|
|
|
import me.chanjar.weixin.common.util.json.WxGsonBuilder; |
|
|
|
import java.io.ByteArrayInputStream; |
|
|
|
import java.io.File; |
|
|
|
import java.io.IOException; |
|
|
|
import java.io.InputStream; |
|
|
|
import java.util.HashMap; |
|
|
|
import java.util.Map; |
|
|
|
|
|
|
|
import org.apache.commons.io.IOUtils; |
|
|
|
import org.apache.http.HttpHost; |
|
|
|
import org.apache.http.client.config.RequestConfig; |
|
|
@@ -13,12 +15,11 @@ import org.apache.http.client.methods.HttpPost; |
|
|
|
import org.apache.http.entity.StringEntity; |
|
|
|
import org.apache.http.impl.client.CloseableHttpClient; |
|
|
|
|
|
|
|
import java.io.ByteArrayInputStream; |
|
|
|
import java.io.File; |
|
|
|
import java.io.IOException; |
|
|
|
import java.io.InputStream; |
|
|
|
import java.util.HashMap; |
|
|
|
import java.util.Map; |
|
|
|
import me.chanjar.weixin.common.bean.result.WxError; |
|
|
|
import me.chanjar.weixin.common.exception.WxErrorException; |
|
|
|
import me.chanjar.weixin.common.util.http.InputStreamResponseHandler; |
|
|
|
import me.chanjar.weixin.common.util.http.RequestExecutor; |
|
|
|
import me.chanjar.weixin.common.util.json.WxGsonBuilder; |
|
|
|
|
|
|
|
public class MaterialVoiceAndImageDownloadRequestExecutor implements RequestExecutor<InputStream, String> { |
|
|
|
|
|
|
@@ -44,9 +45,9 @@ public class MaterialVoiceAndImageDownloadRequestExecutor implements RequestExec |
|
|
|
Map<String, String> params = new HashMap<>(); |
|
|
|
params.put("media_id", materialId); |
|
|
|
httpPost.setEntity(new StringEntity(WxGsonBuilder.create().toJson(params))); |
|
|
|
try(CloseableHttpResponse response = httpclient.execute(httpPost)){ |
|
|
|
try (CloseableHttpResponse response = httpclient.execute(httpPost); |
|
|
|
InputStream inputStream = InputStreamResponseHandler.INSTANCE.handleResponse(response);){ |
|
|
|
// 下载媒体文件出错 |
|
|
|
InputStream inputStream = InputStreamResponseHandler.INSTANCE.handleResponse(response); |
|
|
|
byte[] responseContent = IOUtils.toByteArray(inputStream); |
|
|
|
String responseContentString = new String(responseContent, "UTF-8"); |
|
|
|
if (responseContentString.length() < 100) { |
|
|
|