예제 #1
0
            private HttpClient BuildHttpClient(IFluentHttpClientBuilder httpClientBuilder)
            {
                var httpClient = httpClientBuilder.HttpMessageHandler != null
                    ? new HttpClient(httpClientBuilder.HttpMessageHandler)
                    : new HttpClient();

                httpClient.BaseAddress = httpClientBuilder.BaseUrl;

                if (httpClientBuilder.Timeout > 0)

                {
                    httpClient.Timeout = new TimeSpan(0, 0, httpClientBuilder.Timeout);
                }

                foreach (var acceptHeader in _acceptHeaders)
                {
                    httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue(acceptHeader));
                }



                httpClientBuilder.DefaultRequestHeaders?.Invoke(httpClient.DefaultRequestHeaders);

                return(httpClient);
            }
예제 #2
0
 private FluentHttpClient(IFluentHttpClientBuilder httpClientBuilder)
 {
     _requestDelegate = httpClientBuilder.RequestDelegate;
 }