Files

28 lines
974 B
C#
Raw Permalink Normal View History

using System.Net.Http;
using Downloader;
namespace PCL.Network;
internal static class DownloadRequestFactory
{
internal static RequestConfiguration Create(string url, bool useBrowserUserAgent, string customUserAgent = "")
{
var request = new HttpRequestMessage(HttpMethod.Get, url);
RequestSigning.SecretHeadersSign(url, ref request, useBrowserUserAgent, customUserAgent);
try
{
var configuration = new RequestConfiguration();
if (request.Headers.UserAgent.Count > 0)
configuration.UserAgent = request.Headers.UserAgent.ToString();
foreach (var header in request.Headers)
if (!header.Key.Equals("User-Agent", StringComparison.OrdinalIgnoreCase))
configuration.Headers.Add($"{header.Key}: {string.Join(", ", header.Value)}");
return configuration;
}
finally
{
request.Dispose();
}
}
}