Используйте DefaultProxyCredentials для прокси по умолчанию в .NET HttpClient
Используйте DefaultProxyCredentials для обнаружения по умолчанию, WebProxy.Credentials для явного прокси и UseDefaultCredentials только для сервера назначения.
Для выбора прокси по умолчанию во время выполнения с текущим контекстом безопасности:
var handler = new System.Net.Http.HttpClientHandler
{
UseProxy = true,
Proxy = null,
DefaultProxyCredentials =
System.Net.CredentialCache.DefaultCredentials
};
var client = new System.Net.Http.HttpClient(handler);DefaultProxyCredentials действует при точно указанных условиях: UseProxy = true и Proxy = null. Политика по умолчанию по-прежнему выбирает посредника.
| Получатель проверки подлинности | Входные данные |
|---|---|
| Прокси по умолчанию/обнаруженный | HttpClientHandler.DefaultProxyCredentials |
| Явный объект WebProxy | Credentials этого объекта |
| Сервер назначения | HttpClientHandler.UseDefaultCredentials |
Эти одинаково названные входные данные не взаимозаменяемы. Настройте обработчик до его первого запроса и сохраняйте его клиент для рабочей нагрузки.
Прокси должен принять учётную запись через схему, поддерживаемую обеими сторонами. Текущее удостоверение службы может отличаться от интерактивного пользователя, чей браузер уже работает.