public static byte[] getFileStream(String url){ HttpClient client = HttpClientBuilder.create().build(); RequestConfig requestConfig = RequestConfig.custom().setSocketTimeout(3000).setConnectTimeout(10000).build(); HttpGet request = new HttpGet(url); request.setConfig(requestConfig); byte[] res = null; try { HttpResponse response = client.execute(request); byte[] fileStream = EntityUtils.toByteArray(response.getEntity()); return fileStream; }catch (Exception ex){ } return res; }
上传bytearray
public static String postFile(String url, Map<String,String> params, byte[] fileConetent, String filename){ String logPrefix = "[HttpUtil:postFile]"; HttpClient client = HttpClientBuilder.create().build(); RequestConfig requestConfig = RequestConfig.custom().setSocketTimeout(3000).setConnectTimeout(10000).build(); HttpPost request = new HttpPost(url); String res = null; try{ request.setConfig(requestConfig); MultipartEntityBuilder builder = MultipartEntityBuilder.create(); builder.setMode(HttpMultipartMode.BROWSER_COMPATIBLE); ContentType contentType = ContentType.MULTIPART_FORM_DATA; builder.addBinaryBody("media", fileConetent,contentType, filename); //注意contenttype 和filename必填,不然微信会返回错误代码 if(params != null){ for(Map.Entry<String,String> entry:params.entrySet()){ builder.addTextBody(entry.getKey(), entry.getValue()); } } HttpEntity entity = builder.build(); request.setEntity(entity); HttpResponse response = client.execute(request); if(response.getStatusLine().getStatusCode() == 200){ // res = EntityUtils.toString(response.getEntity()); res = EntityUtils.toString(response.getEntity()); }else{ Constants.ERROR_LOG.error("[HttpUtils:postRequest]" + "post 请求提交失败" + url); } }catch (Exception ex){ Constants.ERROR_LOG.error(logPrefix,ex); return res; } return res; }
公众号开发-下载图片并上传到微信素材库
最新推荐文章于 2024-04-22 22:16:04 发布