public LightHttpService( bool useCookie = true, IWebProxyExt proxy = null, ILogger <LightHttpService> logger = null) : base(useCookie, proxy, logger) { }
protected AbstractHttpClientService( bool useCookie, IWebProxyExt proxy = null, ILogger logger = null) : base(useCookie, proxy, logger) { }
public HttpClientService( IWebProxyExt proxy = null, bool useCookie = true) : base(useCookie, proxy) { _handler = CreateDefaultHandler(proxy); SetHttpClient(); }
protected override void SetProxy(IWebProxyExt proxy) { base.SetProxy(proxy); if (_options != null) { _options.Proxy = _webProxy; } }
public HttpClientService( HttpMessageHandler handler, bool useCookie, IWebProxyExt proxy = null, ILogger logger = null) : base(useCookie, proxy, logger) { _handler = Check.NotNull(handler, nameof(handler)); SetHttpClient(); }
public HttpClientExtService( IWebProxyExt proxy = null, bool useCookie = true) : this(new HttpClientOptions { Proxy = proxy, UseCookie = useCookie }, DefaultHttpClientFactory.Default, NullLogger <HttpClientExtService> .Instance) { }
public async Task Test(IWebProxyExt proxy) { var service = new HttpClientService(proxy); var res = await service.SendAsync(HttpReq.Get("https://www.google.com/")); if (res.HasError) { _output.WriteLine(res.Exception.ToString()); } Assert.False(res.HasError); }
protected AbstractHttpService( bool useCookie, IWebProxyExt proxy = null, ILogger logger = null) { WebProxy = proxy; Logger = logger ?? NullLogger.Instance; if (useCookie) { _cookieContainer = new CookieContainer(); } }
private static HttpWebRequest BuildRequest(HttpReq request, IWebProxyExt proxy, CookieContainer cc) { var req = (HttpWebRequest)WebRequest.Create(request.GetUrl()); req.AllowAutoRedirect = false; req.ContentType = request.ContentType; req.Method = request.Method.ToString().ToUpper(); req.Referer = request.Referrer; req.Host = request.Host; req.UserAgent = request.UserAgent; if (request.Timeout.HasValue) { req.Timeout = request.Timeout.Value; } if (proxy.Type != ProxyType.None) { req.Proxy = proxy; } else { req.Proxy = request.UseDefaultProxy ? WebRequest.DefaultWebProxy : null; } foreach (var header in request.HeaderMap.Where(h => !_notAddHeaderNames.Contains(h.Key))) { req.Headers.Add(header.Key, header.Value); } var cookies = request.HeaderMap.GetOrDefault(HttpConstants.Cookie) ?? cc?.GetCookieHeader(req.RequestUri); if (!cookies.IsNullOrEmpty()) { req.Headers.Add(HttpConstants.Cookie, cookies); } return(req); }
private static HttpClientHandler CreateDefaultHandler(IWebProxyExt proxy = null) { var handler = new HttpClientHandler { AllowAutoRedirect = false, UseCookies = false, MaxConnectionsPerServer = 64, AutomaticDecompression = DecompressionMethods.GZip | DecompressionMethods.Deflate }; if (proxy != null) { handler.UseProxy = true; handler.Proxy = proxy; } else { handler.UseProxy = false; handler.Proxy = null; } return(handler); }
protected static HttpMessageHandler Create(IWebProxyExt proxy) { switch (proxy.Type) { case ProxyType.None: return(CreateHttpClientHandler(null)); case ProxyType.Http: case ProxyType.Https: return(CreateHttpClientHandler(proxy)); case ProxyType.Socks5: return(new ProxyClientHandler <Socks5>(new ProxySettings { Port = proxy.Port, Host = proxy.Host, Credentials = proxy.Credentials as NetworkCredential })); default: throw new ArgumentOutOfRangeException(); } }
protected override void SetProxy(IWebProxyExt proxy) { proxy = proxy ?? WebProxyExt.None; if (Equals(_webProxy, proxy)) { return; } switch (proxy.Type) { case ProxyType.None: case ProxyType.Http: case ProxyType.Https: { _handler?.Dispose(); _handler = CreateDefaultHandler(_webProxy); break; } case ProxyType.Socks5: { _handler?.Dispose(); _handler = new ProxyClientHandler <Socks5>(new ProxySettings { Port = proxy.Port, Host = proxy.Host, Credentials = proxy.Credentials as NetworkCredential }); break; } default: throw new ArgumentOutOfRangeException(nameof(proxy.Type), proxy.Type, null); } _webProxy = proxy; _httpClient?.Dispose(); SetHttpClient(); }
public DefaultHttpMessageHandlerBuilder(IWebProxyExt proxy) { Check.NotNull(proxy, nameof(proxy)); PrimaryHandler = Create(proxy); }