前端:
前端将获取的用户脸部信息已base64码的格式发送给后台处理器(登录时要发送用户名)。
后台(C#,首先要在nuget里面下载相关程序集):
一、注册用户到百度云人脸库:
发送用户的图片信息和组Id和用户ID,将用户信息注册到人脸库,代码如下:
var client = new Baidu.Aip.Face.Face(API_KEY, SECRET_KEY);
var result = client.UserAdd(img, "BASE64", "group1", userId.ToString());
返回的result为json格式,后面将继续使用。
二、人脸识别登录(在人脸库中搜索人脸信息):
var client = new Baidu.Aip.Face.Face(API_KEY, SECRET_KEY);
client.Timeout = 60000;
var options = new Dictionary<string, object>{
{ "user_id", userid}
};
//请求结果
var result = client.Search(img, "BASE64", "group1",options);
三、返回结果(JObject的使用):
首先要强转为JObject格式:
JObject jo_result = (JObject)JsonConvert.DeserializeObject(result.ToString());
因为返回的result的格式为json格式,所以总的来说,如果要获取大括号里面的内容,就直接通过输入键值访问即可,如jo_result["error_msg"]。若访问的是方括号里面的内容,就直接输入序号访问即可,如jo_result[0]。如果是嵌套着的,那么我们按照规则依次访问即可,如jo_result["result"]["user_list"][0]["score"]。
详情请参见百度云官方相关文档