.NET IHttpClientFactory: konfigurisanje proxyja za imenovanog klijenta
Pričvrstite proxy na primarni obrađivač imenovanog klijenta IHttpClientFactory i koristite isto ime na mestu poziva.
Proxy konfigurisan za jedan imenovani HttpClient ne konfiguriše automatski svaki klijent koji vraća IHttpClientFactory. Ime registracije i traženo ime treba da ostanu zajedno.
services.AddHttpClient("via-proxy")
.ConfigurePrimaryHttpMessageHandler(() => new HttpClientHandler
{
Proxy = new WebProxy("http://203.0.113.10:8080"),
UseProxy = true
});Zatim preuzmite tu imenovanu konfiguraciju:
var client = factory.CreateClient("via-proxy");Krajnja tačka je ilustrativna. Za dozvoljene zahteve ka javnim servisima, lista HTTP proxyja nudi kandidate za WebProxy URL imenovanog klijenta. Pravljenje podrazumevanog neimenovanog klijenta na drugom mestu je drugo traženje, čak i ako oba klijenta dolaze iz iste injektovane fabrike.
Konfigurišite ponašanje proxyja na nivou veze na primarnom obrađivaču, umesto da ga tretirate kao zaglavlje zahteva ka odredištu. Fabrika može da upravlja životnim vekom obrađivača odvojeno od HttpClient objekata koje vraća.
Ako poziv pripada tipiziranom klijentu ili drugom SDK-u, proverite koja registracija obezbeđuje njegov HttpClient. Ispravno konfigurisan imenovani klijent koji se nikad ne koristi ne utiče na mrežnu putanju tog SDK-a.
Koristite ovu konfiguraciju za stabilnu politiku rutiranja. Promena aktivnog obrađivača između operacija i dalje je odvojen problem konkurentnosti i životnog veka.