public static string DownloadToString(this IHttpChannel channel, string url, Encoding?encoding = default, AuthenticationHeaderValue?authenticationHeaderValue = null) { encoding = encoding ?? Encoding.UTF8; var request = channel.CreateRequest(url); if (authenticationHeaderValue != null) { request.Headers.Authorization = authenticationHeaderValue; } var result = SharedHttpClient.Value.SendAsync(request).Result; var contentAsString = result.Content.ReadAsStringAsync().Result; return(contentAsString); }
public static IHttpHeader DownloadHeader(this IHttpChannel channel, string url, AuthenticationHeaderValue?authenticationHeaderValue = null) { var request = channel.CreateRequest(url); if (authenticationHeaderValue != null) { request.Headers.Authorization = authenticationHeaderValue; } request.Method = HttpMethod.Head; var result = SharedHttpClient.Value.SendAsync(request).Result; var dict = result.Headers.ToDictionary(key => key.Key, v => v.Value.ToString() ?? ""); return(new HttpHeader(dict)); }