Beispiel #1
0
        private async Task InitializeHttpClient()
        {
            var userAgent   = UserAgentSelector.GetRandomAgent();
            var httpHandler = new HttpClientHandler();
            var httpClient  = new HttpClient(httpHandler)
            {
                BaseAddress = new Uri(_baseUrl),
                Timeout     = TimeSpan.FromSeconds(_requestTimeout)
            };

            if (_proxyProvider != null)
            {
                var proxyUrl = await _proxyProvider.GetProxyAsync(CheckProxy);

                if (!String.IsNullOrEmpty(proxyUrl))
                {
                    httpHandler.Proxy = new WebProxy(new Uri(proxyUrl));
                    _logger.Info("UzService uses proxy " + proxyUrl);
                }
                else
                {
                    _logger.Warning("Cannot obtain proxy, requesting unproxied");
                }
            }

            _httpClient  = httpClient;
            _httpHandler = httpHandler;
            _userAgent   = userAgent;
        }