public static HttpClient GetClient(string siteId, HttpProxyPool httpProxyPool = null) { var site = SiteConfiguration.Instance.GetSite(siteId); var httpClientHandler = new HttpClientHandler {CookieContainer = new CookieContainer() {}}; if(site.IsUseHttpProxy && httpProxyPool != null) httpClientHandler.Proxy = httpProxyPool.RandomProxy(); httpClientHandler.UseProxy = true; httpClientHandler.UseCookies = true; return new HttpClient(httpClientHandler); }
public void ReturnHttpProxy(UseSpecifiedUriWebProxy proxy, HttpStatusCode statusCode) { HttpProxyPool?.ReturnProxy(proxy, statusCode); }
public UseSpecifiedUriWebProxy GetHttpProxy() { return(HttpProxyPool?.GetProxy()); }