Сохранение автоматических прокси-решений .NET для каждого адресата
Сохраняйте автоматические прокси-решения для каждого адресата вместо замены политики результатом для одного тестового URL.
Определение прокси для одного URL даёт решение только для этого URL. Оно не раскрывает полную политику автоматической маршрутизации для всех адресатов.
Это важно, когда код вызывает GetProxy с внешним тестовым адресом, берёт возвращённый URI и глобально устанавливает новый фиксированный WebProxy. Исходная политика могла отправить узел напрямую или выбрать другой прокси. Замена отбросила эту информацию.
Храните поддерживаемый объект политики у клиента, если требуется поведение, зависящее от адресата. Проверяйте его решение для реально сбойного URL, а не используйте не связанный с ним сайт как универсальный индикатор.
Правильно трактуйте и прямое решение. Реализация может вернуть исходный адресат, когда он обходится; сравнивайте решение об обходе, а не автоматически помечайте этот URI как прокси.
Если фиксированная конечная точка — это задуманная политика приложения, настройте её явно и задокументируйте этот выбор. Фиксированный маршрут, случайно полученный из одного результата авто-прокси, гораздо труднее объяснить, когда следующий адресат ведёт себя иначе.