/// <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"]; } //var model = dic.ToEntity<VehicleLicenseModel>("words"); 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())); } }
static void Main(string[] args) { #region 01,反射调用方式测试 //var user0 = new User() { UserName = "******" }; //CodeTimer.Time("使用InvokeMember", 10000, () => //{ // var t = typeof(User); // t.InvokeMember("SayHello", System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Static | System.Reflection.BindingFlags.InvokeMethod | System.Reflection.BindingFlags.Instance, null, user0, new object[] { "你好" }); //}); //user0.Dispose(); //var user = new User() { UserName = "******" }; //CodeTimer.Time("使用Invoke", 10000, () => //{ // var fun = user.GetType().GetMethod(nameof(user.SayHello)); // fun.Invoke(user, new Object[] { "你好" }); //}); //user.Dispose(); //dynamic user1 = new User() { UserName = "******" }; //CodeTimer.Time("使用InvokeMember", 10000, () => //{ // user1.SayHello("你好"); //}); //user1.Dispose(); //User user2 = new User() { UserName = "******" }; //CodeTimer.Time("使用原始", 10000, () => //{ // user2.SayHello("你好"); // //fun.Invoke(user, new Object[] { "你好" }); //}); //user2.Dispose(); //User user3 = new User() { UserName = "******" }; //CodeTimer.Time("使用var", 10000, () => //{ // user3.SayHello("你好"); // //fun.Invoke(user, new Object[] { "你好" }); //}); //user3.Dispose(); #endregion Order s = new Order(); s.SayHello(null); //Console.Title = "Api Service"; #region 02,WebHost宿主 //string baseAddress = "http://*****:*****@"http://aip.bdstatic.com/portal/dist/1547780921660/ai_images/technology/ocr-cards/idcard/demo-card-1.png"); //var obj2 = IdCardValidateService.IdCardValidate(@"http://testoss.e6gpshk.com/hdc/default/201905/21/0e91a072c6c34a93808bfaef5a1ca86d.jpg", "URL", "612328199403173213", "王广"); //var request = HttpHelper.GetGetResponseEx("http://aip.bdstatic.com/portal/dist/1547780921660/ai_images/technology/ocr-cards/idcard/demo-card-1.png"); //var buffer= HttpHelper.GetResponseStream(request); //var s= Convert.ToBase64String(buffer); //Console.WriteLine(s); //var imgByte = File.ReadAllBytes("http://aip.bdstatic.com/portal/dist/1547780921660/ai_images/technology/ocr-cards/idcard/demo-card-1.png"); //string str = "{\"住址\":{\"words\":\"南京市江宁区弘景大道3889号\"},\"公民身份号码\":{\"words\":\"330881199904173914\"},\"出生\":{\"words\":\"19990417\"},\"姓名\":{\"words\":\"伍云龙\"},\"性别\":{\"words\":\"男\"},\"民族\":{\"words\":\"汉\"}}"; //var dic = JsonConvert.DeserializeObject<IDictionary<string, object>>(str); //var obj = dic.ToEntity<IdCardInfo>(); #endregion #region 04,汉字转拼音 // string[] maxims = new string[]{ // "事常与人违,事总在人为", // "骏马是跑出来的,强兵是打出来的", // "驾驭命运的舵是奋斗。不抱有一丝幻想,不放弃一点机会,不停止一日努力。 ", // "如果惧怕前面跌宕的山岩,生命就永远只能是死水一潭", // "懦弱的人只会裹足不前,莽撞的人只能引为烧身,只有真正勇敢的人才能所向披靡" //}; // string[] medicines = new string[] { // "聚维酮碘溶液", // "开塞露", // "炉甘石洗剂", // "苯扎氯铵贴", // "鱼石脂软膏", // "莫匹罗星软膏", // "红霉素软膏", // "氢化可的松软膏", // "曲安奈德软膏", // "丁苯羟酸乳膏", // "双氯芬酸二乙胺乳膏", // "冻疮膏", // "克霉唑软膏", // "特比奈芬软膏", // "酞丁安软膏", // "咪康唑软膏、栓剂", // "甲硝唑栓", // "复方莪术油栓" //}; // for (int i = 0; i < maxims.Length; i++) // { // Console.WriteLine("汉字:{0}.....拼音{1}", maxims[i], maxims[i].GetFirstSpell()); // } #endregion #region 05, 获取备注描述 var user1 = new List <User>(); user1.Add(new User() { UserName = "******" }); user1.Add(new User() { UserName = "******" }); Order order = new Order() { Id = 1, Name = "lee", User = new User() { UserName = "******" }, Count = 10, Price = 1.00, Desc = "订单测试", Users = user1, OrderStatus = OrderStatusEnum.Fail }; var user2 = new List <User>(); user2.Add(new User() { UserName = "******" }); //user2.Add(new User() { UserName = "******" }); //user2.Add(new User() { UserName = "******" }); Order order1 = new Order() { Id = 2, Name = "lee1", User = new User() { UserName = "******" }, Count = 104, Price = 1.004, Users = user2, OrderStatus = OrderStatusEnum.Success }; string remark = BuildRemark <Order>(order, order1); #endregion Console.ReadKey(); }