61 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			C#
		
	
	
	
		
		
			
		
	
	
			61 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			C#
		
	
	
	
|  | 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<KeyValuePair<String, String>> paraList = new List<KeyValuePair<string, string>>(); | |||
|  |             paraList.Add(new KeyValuePair<string, string>("grant_type", "client_credentials")); | |||
|  |             paraList.Add(new KeyValuePair<string, string>("client_id", clientId)); | |||
|  |             paraList.Add(new KeyValuePair<string, string>("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<ErrorAccessTokenModel>(tempData); | |||
|  |             } | |||
|  |             else | |||
|  |             {//标识正常 | |||
|  |                 tempAccessTokenModel.IsSuccess = true; | |||
|  |                 tempAccessTokenModel.SuccessModel = Json.ToObject<SuccessAccessTokenModel>(tempData); | |||
|  |             } | |||
|  | 
 | |||
|  |             return tempAccessTokenModel; | |||
|  | 
 | |||
|  |         } | |||
|  | 
 | |||
|  |     } | |||
|  | } |