Бір атаулы HttpClient үшін конфигурацияланған прокси IHttpClientFactory қайтаратын әрбір клиентті автоматты түрде конфигурацияламайды. Тіркелу аты мен сұралған атауды бірге ұстаңыз.

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

Содан кейін сол атаулы конфигурацияны алыңыз:

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

Соңғы нүкте мысал ретінде келтірілген. Рұқсат етілген қоғамдық қызмет сұраулары үшін HTTP прокси тізімі атаулы клиенттің WebProxy URL мекенжайына үміткерлер ұсынады. Әдепкі атаусыз клиентті басқа жерде жасау — бұл басқа іздеу, тіпті екі клиент те бірдей енгізілген фабрикадан келсе де.

Прокси мінез-құлқын негізгі handler-де қосылым деңгейінде конфигурациялаңыз, оны межелі сұрау тақырыбы ретінде қарастырмаңыз. Фабрика handler-лердің өмір сүру ұзақтығын өзі қайтаратын HttpClient нысандарынан бөлек басқара алады.

Егер шақыру теруленген клиентке немесе басқа SDK-ға тиесілі болса, оның HttpClient-ін қай тіркелу беретінін тексеріңіз. Дұрыс конфигурацияланған, бірақ ешқашан пайдаланылмайтын атаулы клиент сол SDK-ның желілік жолына әсер етпейді.

Бұл конфигурацияны тұрақты маршруттау саясаты үшін пайдаланыңыз. Операциялар арасында жұмыс істеп тұрған handler-ді ауыстыру бөлек қатарластық және өмір сүру мәселесі болып қалады.

Қатысты мақалалар