public static HttpClientHandler Build(NativeTransportSettings settings, TimeSpan?connectionTimeout, ILog log) { EnsureInitialized(log); var handler = handlerFactory(); handler.AllowAutoRedirect = settings.AllowAutoRedirect; handler.AutomaticDecompression = DecompressionMethods.None; handler.MaxAutomaticRedirections = 3; handler.MaxConnectionsPerServer = settings.MaxConnectionsPerEndpoint; handler.MaxResponseHeadersLength = 64 * 1024; handler.Proxy = settings.Proxy; handler.UseProxy = settings.Proxy != null; handler.UseCookies = false; handler.UseDefaultCredentials = false; handler.PreAuthenticate = false; // (alexkir, 13.10.2017) we can safely pass callbacks only on Windows; see https://github.com/dotnet/corefx/pull/19908 if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { handler.ServerCertificateCustomValidationCallback = (message, certificate2, arg3, arg4) => true; WinHttpHandlerTuner.Tune(handler, connectionTimeout, log); } return(handler); }
public static HttpClientHandler Build(NativeTransportSettings settings, TimeSpan?connectionTimeout, ILog log) { EnsureInitialized(log); var handler = handlerFactory(); handler.AllowAutoRedirect = settings.AllowAutoRedirect; handler.AutomaticDecompression = DecompressionMethods.None; handler.MaxAutomaticRedirections = 3; handler.MaxConnectionsPerServer = settings.MaxConnectionsPerEndpoint; handler.MaxResponseHeadersLength = 64 * 1024; handler.Proxy = settings.Proxy; handler.UseProxy = settings.Proxy != null; handler.UseCookies = false; handler.UseDefaultCredentials = false; handler.PreAuthenticate = false; handler.ServerCertificateCustomValidationCallback = settings.RemoteCertificateValidationCallback; if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { WinHttpHandlerTuner.Tune(handler, connectionTimeout, log); } return(handler); }