调用idCardOCR接口异常errcode: 41005
accessToken获取正常
传入的图片地址外网能正常访问,http+域名的地址,后台代码如下:
public JSONObject getIdCardInfo(String type, String imgUrl, String accessToken) {
String requestUrl = "https://api.weixin.qq.com/cv/ocr/idcard?access_token=" + accessToken;
String data = HttpRequest
.post(requestUrl)
.header("content-type", "application/x-www-form-urlencoded")
.body(String.format("{'img_url':'%s'}", imgUrl))
.execute()
.body();
JSONObject json = JSONObject.parseObject(data);
log.error("解析结果:"+json.toJSONString());
String errcode = json.getString("errcode");
if (!"0".equals(errcode)) {
}
return json;
}
我也出现这个问题,用apiPost调用能成功,到.net程序里就是{"errcode":41005,"errmsg":"media data missing hint: [9roW.a08237701] rid: 659667ef-3694774f-2f0b3279"},腾讯文档垃圾果然名不虚传
改用其他方式了,ocr插件比较好用
在body()方法中传入的参数格式应该是application/json格式,而不是application/x-www-form-urlencoded格式。