Значение прокси в launchSettings.json относится к профилю запуска для разработки. Публикация приложения не делает этот профиль средой рабочего процесса IIS, службы или контейнера.

При сбое в развёрнутой среде проверьте процесс, который действительно запускает приложение. Его среда, учётная запись и обработчик HTTP определяют, какие входные данные прокси доступны.

Где это работаетЧто сравнить после развёртывания
Профиль запуска в IDEСреда процесса-хоста
Интерактивный сеанс пользователяУчётная запись службы и её параметры прокси
Клиент HTTP, созданный вручнуюОбработчик, который использует внедрённый клиент приложения

Инициализация прокси по умолчанию в современном HttpClient подчиняется зависящим от платформы правилам среды и системной конфигурации. Явно настроенный обработчик может переопределить эти значения по умолчанию. При использовании IHttpClientFactory проверьте регистрацию основного обработчика именованного клиента и имя, полученное в месте вызова. Проверьте оба источника, прежде чем заключать, что файл конфигурации был проигнорирован.

Старые примеры system.net/defaultProxy из .NET Framework описывают другую модель конфигурации. Не вставляйте этот раздел в современный файл развёртывания и не предполагайте, что его использует каждая реализация HTTP в .NET. При развёртывании в IIS модуль ASP.NET Core также имеет поддерживаемый механизм настройки среды процесса; сохраняйте остальную часть конфигурации хостинга при добавлении значений.

Зафиксируйте, существует ли ожидаемая переменная, не публикуя её полное значение с учётными данными. Затем убедитесь, что клиент, выполняющий неудачный запрос, использует этот источник. Правильно настроенный запускающий механизм не может исправить клиент, который намеренно использует другой маршрут.

Похожие статьи