谁可以告诉我嘛,求详细解答
我刚才测试了下,如果你的图片不是人脸图片的话,百度是无法识别的,所以没有返回值。本人亲测,望采纳!
你从网上随便下载一个人脸图片试一下就行,复制一份作为第二个图片。正确的返回值是下面这样的。
{
"result": [{
"score": 100,
"index_i": "0",
"index_j": "1"
}],
"log_id": 3733537488120411,
"result_num": 1
}
我测试的图片是这个:
打电话给百度客服就行了
sorry sorry sorry
去你看看 支付宝的那个。支付宝的说明比百度好多了。
没有返回,看看你斜对了没?
你的代码只是发了两个图片的字符串路径过去,百度又读不到你电脑本地的图片,所以就返回空值了。
我不怎么懂JAVA,建议你参考官方的文档,大致应该是将图片转成流的形式发到服务器那里的。
String filePath = "[本地文件路径]";
byte[] imgData = FileUtil.readFileByBytes(filePath);
String imgStr = Base64Util.encode(imgData);
String imgParam = URLEncoder.encode(imgStr, "UTF-8");
String param = "max_face_num=" + 5 + "&face_fields=" + "age,beauty,expression,faceshape,gender,glasses,landmark,race,qualities" + "&image=" + imgParam;
String accessToken = "[调用鉴权接口获取的token]";
String result = HttpUtil.post(url, accessToken, param);
System.out.println(result);
大概类似这样
我也不懂,求解求解求解求解!