public SystemNetHttpClientAdapter(AdapterOptions options) { _autoRedirect = options.AutoRedirect; var handler = new WebRequestHandler { AllowAutoRedirect = !(AutoRedirect.AutoRedirectAndForwardAuthorizationHeader.Equals(options.AutoRedirect) || AutoRedirect.DoNotAutoRedirect.Equals(options.AutoRedirect)), UseCookies = false, }; if (options.CachePolicy.Cache) { handler.CachePolicy = new RequestCachePolicy(RequestCacheLevel.Default); } if (options.AcceptEncoding.AcceptGzipAndDeflate) { handler.AutomaticDecompression = DecompressionMethods.Deflate | DecompressionMethods.GZip; } _client = new HttpClient(handler); if (options.Timeout != null) { _client.Timeout = options.Timeout.TimeSpan; } }
private HttpClientAdapter CreateClient(AdapterOptions options) { HttpClientAdapter adapter; if (!Adapters.TryGetValue(options, out adapter)) { Adapters[options] = adapter = new SystemNetHttpClientAdapter(options); } return adapter; }
private HttpClientAdapter CreateClient(AdapterOptions options) { HttpClientAdapter adapter; if (!Adapters.TryGetValue(options, out adapter)) { Adapters[options] = adapter = new SystemNetHttpClientAdapter(options); } return(adapter); }
public HttpClientAdapter CreateClient(PipelineOptions options) { var adapterOptions = new AdapterOptions { AutoRedirect = AutoRedirect.AutoRedirectButDoNotForwardAuthorizationHeader, CachePolicy = new CachePolicy {Cache = false}, AcceptEncoding = new AcceptEncoding {AcceptGzipAndDeflate = true} }; options.Use<AutoRedirect>(option => { adapterOptions.AutoRedirect = option; }); options.Use<CachePolicy>(option => { adapterOptions.CachePolicy = option; }); options.Use<AcceptEncoding>(option => { adapterOptions.AcceptEncoding = option; }); return CreateClient(adapterOptions); }
public HttpClientAdapter CreateClient(PipelineOptions options) { var adapterOptions = new AdapterOptions { AutoRedirect = AutoRedirect.AutoRedirectButDoNotForwardAuthorizationHeader, CachePolicy = new CachePolicy { Cache = false }, AcceptEncoding = new AcceptEncoding { AcceptGzipAndDeflate = true } }; options.Use <AutoRedirect>(option => { adapterOptions.AutoRedirect = option; }); options.Use <CachePolicy>(option => { adapterOptions.CachePolicy = option; }); options.Use <AcceptEncoding>(option => { adapterOptions.AcceptEncoding = option; }); options.Use <RequestTimeout>(option => adapterOptions.Timeout = option); return(CreateClient(adapterOptions)); }