前端:
前端將獲取的用戶臉部信息已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"]。
詳情請參見百度雲官方相關文檔