using System; using System.Configuration; using System.Net.Http; using System.Net.Http.Headers; namespace Common { public class RestApiClient { private static int timeOut = 100;//Convert.ToInt16(ConfigurationManager.AppSettings["ApiTimeOutSeconds"]); public static HttpClient GetThirdPartyClient() { //string authHeader = ConfigurationManager.AppSettings["ApiUser"].ToString() + ":" +ConfigurationManager.AppSettings["ApiPwd"].ToString(); //var plainTextBytes = Encoding.UTF8.GetBytes(authHeader); //string encodedAuthHeader = Convert.ToBase64String(plainTextBytes); string thirdPartyUrl = ConfigurationManager.AppSettings["ThirdParty_Url"].ToString(); var httpClient = new HttpClient(); httpClient.BaseAddress = new Uri(thirdPartyUrl); httpClient.DefaultRequestHeaders.Add("HeaderToken", ConfigurationManager.AppSettings["ThirdParty_HeaderToken"].ToString()); httpClient.DefaultRequestHeaders.Add("Authorization", ConfigurationManager.AppSettings["ThirdParty_Authorization"].ToString()); httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); httpClient.Timeout = new TimeSpan(0, 0, timeOut); return httpClient; } public static HttpClient GetKwangjuBankClient() { string thirdPartyUrl = ConfigurationManager.AppSettings["KwangjuBank_Url"].ToString(); var httpClient = new HttpClient(); httpClient.BaseAddress = new Uri(thirdPartyUrl); httpClient.DefaultRequestHeaders.Add("HeaderToken", ConfigurationManager.AppSettings["KwangjuBank_HeaderToken"].ToString()); httpClient.DefaultRequestHeaders.Add("Authorization", ConfigurationManager.AppSettings["KwangjuBank_Authorization"].ToString()); httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); httpClient.Timeout = new TimeSpan(0, 0, timeOut); return httpClient; } public static HttpClient CallJMEThirdParty() { string thirdPartyUrl = ConfigurationManager.AppSettings["JMECoreAPIURL"].ToString(); var httpClient = new HttpClient(); httpClient.BaseAddress = new Uri(thirdPartyUrl); httpClient.DefaultRequestHeaders.Add("apiAccessKey", ConfigurationManager.AppSettings["JMECoreAPI_HeaderToken"].ToString()); httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); httpClient.Timeout = new TimeSpan(0, 0, timeOut); return httpClient; } } }