.NET IHttpClientFactory: konfigurere proxyen for den navngitte klienten
Koble en proxy til den navngitte IHttpClientFactory-klientens primære behandler og bruk samme navn på kallstedet.
En proxy som er konfigurert for én navngitt HttpClient, konfigurerer ikke automatisk alle klientene IHttpClientFactory returnerer. Hold registreringsnavnet og det forespurte navnet sammen.
services.AddHttpClient("via-proxy")
.ConfigurePrimaryHttpMessageHandler(() => new HttpClientHandler
{
Proxy = new WebProxy("http://203.0.113.10:8080"),
UseProxy = true
});Hent deretter den navngitte konfigurasjonen:
var client = factory.CreateClient("via-proxy");Endepunktet er illustrativt. For tillatte forespørsler til offentlige tjenester tilbyr HTTP-proxylisten kandidater for den navngitte klientens WebProxy-URL. Å opprette standardklienten uten navn et annet sted er et annet oppslag, selv om begge klientene kommer fra samme injiserte fabrikk.
Konfigurer proxyatferd på tilkoblingsnivå på den primære behandleren i stedet for å behandle det som en destinasjonsforespørselsheader. Fabrikken kan håndtere behandlernes levetid separat fra HttpClient-objektene den returnerer.
Hvis kallet eies av en typet klient eller en annen SDK, sjekk hvilken registrering som leverer HttpClient-en. En riktig konfigurert navngitt klient som aldri brukes, påvirker ikke SDK-ens nettverksbane.
Bruk denne konfigurasjonen for en stabil rutingpolicy. Å bytte en aktiv behandler mellom operasjoner er fortsatt et separat samtidighets- og levetidsproblem.