Прокси настройки в ASP.NET Core: launchSettings.json срещу продукция
Разграничете прокси стойностите от профила за стартиране при разработка от средата и HTTP манипулатора на внедрен процес ASP.NET Core.
Прокси стойност в launchSettings.json принадлежи на профил за стартиране при разработка. Публикуването на приложението не прави този профил средата на работен процес на IIS, услуга или контейнер.
При отказ във внедрена среда проверете процеса, който действително стартира приложението. Неговата среда, акаунт и HTTP манипулатор определят кои прокси входни данни са налични.
| Къде работи | Какво да сравните след внедряване |
|---|---|
| Профил за стартиране в IDE | Средата на процеса на хоста |
| Интерактивна потребителска сесия | Акаунтът на услугата и неговите прокси настройки |
| Ръчно създаден HTTP клиент | Манипулаторът, използван от инжектирания клиент на приложението |
Инициализацията на прокси по подразбиране в съвременния HttpClient има специфични за платформата правила за среда и системна конфигурация. Изрично конфигуриран манипулатор може да отмени тези стойности по подразбиране. С IHttpClientFactory проверете регистрацията на основния манипулатор на именувания клиент и името, получено на мястото на извикване. Проверете и двата входа, преди да заключите, че конфигурационен файл е бил пренебрегнат.
Старите примери за system.net/defaultProxy в .NET Framework описват друг модел на конфигурация. Не поставяйте този раздел в модерен файл за внедряване и не предполагайте, че всяка HTTP реализация в .NET го използва. При внедряване в IIS модулът ASP.NET Core също има поддържан механизъм за конфигуриране на средата на процеса; запазете останалата част от конфигурацията на хоста при добавяне на стойности.
Отбележете дали очакваната променлива съществува, без да публикувате пълната ѝ стойност с идентификационни данни. След това потвърдете, че клиентът, изпълняващ неуспешната заявка, използва този източник. Правилно конфигуриран стартиращ механизъм не може да поправи клиент, който умишлено използва друг маршрут.