.NET IHttpClientFactory: konfigurer den navngivne klients proxy
Vedhæft en proxy til en IHttpClientFactory-navngivet klients primære handler og hent samme navn på kaldstedet.
En proxy, der er konfigureret til én navngiven HttpClient, konfigurerer ikke automatisk alle klienter, som IHttpClientFactory returnerer. Hold registreringsnavnet og det anmodede navn sammen.
services.AddHttpClient("via-proxy")
.ConfigurePrimaryHttpMessageHandler(() => new HttpClientHandler
{
Proxy = new WebProxy("http://203.0.113.10:8080"),
UseProxy = true
});Hent derefter den navngivne konfiguration:
var client = factory.CreateClient("via-proxy");Endepunktet er illustrativt. Til tilladte anmodninger til offentlige tjenester giver HTTP-proxylisten kandidater til den navngivne klients WebProxy-URL. Oprettelse af standardklienten uden navn andre steder er et andet opslag, selv om begge klienter kommer fra den samme injicerede factory.
Konfigurer proxyadfærd på forbindelsesniveau på den primære handler i stedet for at behandle den som en destinationsanmodningsheader. Factoryen kan styre handler-levetider separat fra de HttpClient-objekter, den returnerer.
Hvis en typet klient eller en anden SDK ejer kaldet, skal du kontrollere, hvilken registrering der leverer dens HttpClient. En korrekt konfigureret navngiven klient, der aldrig bruges, påvirker ikke den SDK's netværkssti.
Brug denne konfiguration til en stabil routingpolitik. Ændring af en aktiv handler mellem operationer forbliver et separat samtidigheds- og levetidsproblem.