using AOP.Common; using System; using System.Collections.Generic; using System.Linq; using System.Net.Http; using System.Text; using System.Threading.Tasks; namespace SgManager.AI { public static class IDCardToken { // 调用getAccessToken()获取的 access_token建议根据expires_in 时间 设置缓存 // 返回token示例 public static String TOKEN = "24.adda70c11b9786206253ddb70affdc46.2592000.1493524354.282335-1234567"; // 百度云中开通对应服务应用的 API Key 建议开通应用的时候多选服务 private static String clientId = System.Configuration.ConfigurationManager.AppSettings["ID_API_KEY"].ToString();// "onreA4ms0OUi2eclj8CnMoaV"; // 百度云中开通对应服务应用的 Secret Key private static String clientSecret = System.Configuration.ConfigurationManager.AppSettings["ID_SECRET_KEY"].ToString();// "ge8kERfb5uxqUKyOhdLMD2ozumNUigjY"; private static String getBaiduAccessToken() { String authHost = "https://aip.baidubce.com/oauth/2.0/token"; HttpClient client = new HttpClient(); List> paraList = new List>(); paraList.Add(new KeyValuePair("grant_type", "client_credentials")); paraList.Add(new KeyValuePair("client_id", clientId)); paraList.Add(new KeyValuePair("client_secret", clientSecret)); HttpResponseMessage response = client.PostAsync(authHost, new FormUrlEncodedContent(paraList)).Result; String result = response.Content.ReadAsStringAsync().Result; Console.WriteLine(result); return result; } public static AccessTokenModel GetAccessToken() { AccessTokenModel tempAccessTokenModel = new AccessTokenModel(); string tempData = getBaiduAccessToken(); if (tempData.Contains("\"error\"")) {//标识异常 tempAccessTokenModel.IsSuccess = false; tempAccessTokenModel.ErrorModel = Json.ToObject(tempData); } else {//标识正常 tempAccessTokenModel.IsSuccess = true; tempAccessTokenModel.SuccessModel = Json.ToObject(tempData); } return tempAccessTokenModel; } } }