public T GetDataFromUrl<T>(string url) { var httpClientConfig = new HttpClientConfig { BaseAddress = new Uri(url), RequestUri = string.Empty }; httpClientConfig.AcceptHeaders.Add(new MediaTypeWithQualityHeaderValue(Constants.JsonContentType)); httpClientConfig.UserAgentHeaders.Add(new KeyValuePair<string, string>(Constants.UserAgentHeaderKey, string.Empty)); return _httpReponseProvider.GetResponse<T>(httpClientConfig).Result; }
public async Task <T> GetResponse <T>(HttpClientConfig httpClientConfig) { HttpResponseMessage httpResponseMessage; using (var client = new HttpClient()) { client.BaseAddress = httpClientConfig.BaseAddress; httpClientConfig.AcceptHeaders.ForEach(x => client.DefaultRequestHeaders.Accept.Add(x)); httpClientConfig.UserAgentHeaders.ForEach(x => client.DefaultRequestHeaders.UserAgent.Add(new ProductInfoHeaderValue(x.Key, x.Value))); httpResponseMessage = await client.GetAsync(httpClientConfig.RequestUri).ConfigureAwait(false); } if (!httpResponseMessage.IsSuccessStatusCode) { return(await Task.FromResult(default(T))); } return(await httpResponseMessage.Content.ReadAsAsync <T>()); }