private void BtnSave_Click(object sender, EventArgs e) { // "http://aip.bdstatic.com/portal/dist/1547780921660/ai_images/technology/ocr-cards/idcard/demo-card-1.png" var byteArray = HttpHelper.GetResponseStream(HttpHelper.GetGetResponseEx(ImageAddress.Text)); var image = byteArray.Base64StringToImage(); if (image != null) { ImageBox.Image = image; var resultModel = IdCardValidateService.GetIdCardInfo(ImageAddress.Text); if (resultModel.Status == 1 && resultModel.Data != null) { IdCardInfo model = resultModel.Data as IdCardInfo; Name.Text = model.Name; IdCard.Text = model.IdCard; Sex.Text = model.Gender; Address.Text = model.Address; Birthday.Text = model.Birthday; Nation.Text = model.Nation; } } else { MessageBox.Show("请输入正确的网络图片链接"); } }
/// <summary> /// 获取行驶证信息 /// </summary> /// <param name="imagePath">图片路径</param> public static bool IdCardValidate(string imagePath, string imageType, string idCardNumber, string name) { var getTokenResult = IdCardValidateService.GetBaidu_AccessToken(); if (getTokenResult.Status == 0) { return(false); } string url = idCardvalidatehost + idCard; var request = HttpHelper.GetGetResponseEx(imagePath); var base64 = HttpHelper.GetResponseStream(request); Dictionary <string, string> param = new Dictionary <string, string>(); //param.Add("image", HttpUtility.UrlEncode(Convert.ToBase64String(base64))); param.Add("image", imagePath); param.Add("id_card_number", idCardNumber); param.Add("image_type", imageType); param.Add("name", name); param.Add("access_token", getTokenResult.Data); var result = WebRequestHelper.WebPostRequest <JObject>(url, param, false); var obj = result["result"]; var errorMsg = result["error_msg"]; if (obj != null) { var dic = JsonConvert.DeserializeObject <IDictionary <string, int> >(obj.ToString()); if (dic.Keys.Contains("score")) { int value = dic["score"]; } return(true); } else { return(false); } }
/// <summary> /// 获取身份证信息 /// </summary> /// <param name="imagePath">图书路径</param> /// <returns></returns> public static HttpResult GetIdCardInfo(string imagePath) { var getTokenResult = IdCardValidateService.GetBaidu_AccessToken(); if (getTokenResult.Status == 0) { return(new HttpResult(0, getTokenResult.Message)); } string url = host + idCardValidate; var request = HttpHelper.GetGetResponseEx(imagePath); var base64 = HttpHelper.GetResponseStream(request); Dictionary <string, string> param = new Dictionary <string, string>(); param.Add("id_card_side", "front"); param.Add("image", HttpUtility.UrlEncode(base64.ToByteBase64())); param.Add("access_token", getTokenResult.Data); var result = WebRequestHelper.WebPostRequest <JObject>(url, param, false); var obj = result["words_result"]; var errorMsg = result["error"]; if (obj != null) { var dic = JsonConvert.DeserializeObject <IDictionary <string, object> >(obj.ToString()); return(new HttpResult(dic.ToEntity <IdCardInfo>())); } else { return(new HttpResult(0, errorMsg.ToString())); } }