Një proxy i konfiguruar për një HttpClient të emërtuar nuk konfiguron automatikisht çdo klient që kthen IHttpClientFactory. Emrin e regjistrimit dhe emrin e kërkuar duhet t'i mbani bashkë.

services.AddHttpClient("via-proxy")
    .ConfigurePrimaryHttpMessageHandler(() => new HttpClientHandler
    {
        Proxy = new WebProxy("http://203.0.113.10:8080"),
        UseProxy = true
    });

Më pas merrni atë konfigurim të emërtuar:

var client = factory.CreateClient("via-proxy");

Pika e fundit është ilustruese. Për kërkesat e lejuara drejt shërbimeve publike, lista e proxy-ve HTTP ofron kandidatë për URL-në WebProxy të klientit të emërtuar. Krijimi i klientit të paracaktuar pa emër diku tjetër është një kërkim tjetër, edhe nëse të dy klientët vijnë nga e njëjta fabrikë e injektuar.

Konfiguroni sjelljen e proxy-t në nivel lidhjeje në handler-in primar, në vend që ta trajtoni si një kokë kërkese destinacioni. Fabrika mund të menaxhojë jetëgjatësinë e handler-ave veçmas nga objektet HttpClient që kthen.

Nëse thirrja i përket një klienti të tipizuar ose një SDK-je tjetër, kontrolloni cili regjistrim ofron HttpClient-in e tij. Një klient i emërtuar i konfiguruar saktë, që nuk përdoret kurrë, nuk ndikon në rrugën e rrjetit të atij SDK-je.

Përdoreni këtë konfigurim për një politikë të qëndrueshme rrugëtimi. Ndryshimi i një handler-i aktiv midis operacioneve mbetet një problem i veçantë i konkurencës dhe jetëgjatësisë.

Artikuj të ngjashëm