public HttpClient Create([NotNull] IRequestInfo requestInfo) { var client = httpClientFactory.CreateClient(); client.DefaultRequestHeaders.Accept.Clear(); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); if (requestInfo.RequiresAuthorization()) { client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue( scheme: "Bearer", parameter: requestInfo.Auth.JsonWebToken); } foreach (var header in requestInfo.Headers) { client.DefaultRequestHeaders.Add(header.Name, header.Value); } client.Timeout = requestInfo.Timeout; return(client); }