1.微信直播提交审核商品
https://mp.weixin.qq.com/debug/cgi-bin/apiinfo?t=index&type=%E5%9F%BA%E7%A1%80%E6%94%AF%E6%8C%81&form=%E5%A4%9A%E5%AA%92%E4%BD%93%E6%96%87%E4%BB%B6%E4%B8%8A%E4%BC%A0%E6%8E%A5%E5%8F%A3%20/media/upload
java 对接微信接口,辣鸡微信接口文档,全是坑
private String uploadMedia(WxInterfaceInfo wxInterfaceInfo, String imageUrl) {
String uploadMediaUrl = "https://api.weixin.qq.com/cgi-bin/media/upload?access_token=ACCESS_TOKEN&type=TYPE";
uploadMediaUrl = uploadMediaUrl.replace("ACCESS_TOKEN", wxInterfaceInfo.getAccessToken()).replace("TYPE", "image");
try {
HttpPost httpPost = new HttpPost(uploadMediaUrl);
// URL mediaUrl = new URL(imageUrl);
// HttpURLConnection meidaConn = (HttpURLConnection) mediaUrl.openConnection();
// meidaConn.setDoOutput(true);
// meidaConn.setRequestMethod("GET");
// ByteArrayBody byteArrayBody = new ByteArrayBody(IOUtils.toByteArray(meidaConn.getInputStream()), System.currentTimeMillis() + "_22.jpeg");
// wxInterfaceInfo.getBytes() 将图片转为二进制文件
HttpEntity reqEntity = MultipartEntityBuilder.create()
.addPart("media", new ByteArrayBody(wxInterfaceInfo.getBytes(),ImageUtil.imgUrlFileName(imageUrl)))
.build();
httpPost.setEntity(reqEntity);
// meidaConn.disconnect();
try {
CloseableHttpResponse httpResponse = HttpClients.createDefault().execute(httpPost);
InputStream content = httpResponse.getEntity().getContent();
// 读取返回流的结果
InputStreamReader inputStreamReader = new InputStreamReader(content, "utf-8");
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
StringBuffer buffer = new StringBuffer();
String str = null;
while ((str = bufferedReader.readLine()) != null) {
buffer.append(str);
}
bufferedReader.close();
inputStreamReader.close();
// 释放资源
content.close();
System.out.println("buffer: " + buffer.toString());
// 使用JSON-lib解析返回结果
ImageResponse imageResponse = Json.parseObject(buffer.toString(), ImageResponse.class);
// 测试打印结果
System.out.println("打印测试结果"+imageResponse);
if (Objects.isNull(imageResponse)) {
throw new InterfaceException(buffer.toString());
}
return imageResponse.getMedia_id();
} catch (IOException e) {
log.info("IO异常");
}
} catch (Exception e) {
System.out.println("异常");
}
return "";
}