För ett .NET Framework-program registrerar du proxymodulen under configuration/system.net/defaultProxy:

<defaultProxy>
  <module type="Company.Network.RoutingProxy, Company.Network" />
</defaultProxy>

Det första namnet är typen och det andra är dess assembly-identitet, inte en DLL-sökväg. Assemblyn och beroendena måste läsas in enligt programmets normala regler.

Kontrollera två portar. Först måste körmiljön skapa en offentlig typ som implementerar IWebProxy via en parameterlös konstruktor. Behåll inre undantag från inläsnings- eller konstruktionsfel; de kommer före varje proxy-TCP-anslutning. För en skrivbordsutgåva, bekräfta att registreringen nådde den distribuerade konfigurationen för den körbara filen. Med ClickOnce, jämför den byggda, publicerade och installerade .exe.config. Ett klassbiblioteks App.config konfigurerar vanligtvis inte dess värdprocess.

För det andra måste begäran använda den standarden. En explicit proxytilldelning kan åsidosätta den, och en annan HTTP-stack läser kanske inte den här konfigurationsmodellen. Inuti modulen behöver GetProxy och IsBypassed konsekventa beslut, med en absolut proxy-URI som använder rätt schema och port.

Gör även autentiseringsbeteendet konsekvent. En getter som skapar ett hårdkodat konto och ignorerar sin setter kan omintetgöra senare konfiguration även efter lyckad inläsning.

Detta är en underhållsmekanism för .NET Framework. Använd nätverksklientens proxystödda konfiguration i nuvarande .NET i stället för att förvänta dig att den här äldre system.net-registreringen styr varje HttpClient.

Relaterade artiklar