Bir adlandırılmış HttpClient için yapılandırılan proxy, IHttpClientFactory'nin döndürdüğü her istemciyi otomatik olarak yapılandırmaz. Kayıt adını ve istenen adı bir arada tutun.

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

Ardından bu adlandırılmış yapılandırmayı alın:

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

Uç nokta örnektir. İzin verilen kamu hizmeti istekleri için HTTP proxy listesi, adlandırılmış istemcinin WebProxy URL'si için adaylar sunar. Varsayılan adsız istemciyi başka bir yerde oluşturmak farklı bir aramadır; iki istemci de aynı enjekte edilmiş fabrikadan gelse bile.

Proxy davranışını hedef istek başlığı olarak ele almak yerine birincil işleyicide bağlantı düzeyinde yapılandırın. Fabrika, işleyicilerin yaşam sürelerini döndürdüğü HttpClient nesnelerinden ayrı olarak yönetebilir.

Çağrı bir türü belirlenmiş istemciye veya başka bir SDK'ya aitse, HttpClient'ını hangi kaydın sağladığını kontrol edin. Doğru yapılandırılmış ancak hiç kullanılmayan adlandırılmış istemci, o SDK'nın ağ yolunu etkilemez.

Bu yapılandırmayı kararlı bir yönlendirme ilkesi için kullanın. İşlemler arasında etkin bir işleyiciyi değiştirmek yine ayrı bir eşzamanlılık ve yaşam süresi sorunudur.

İlgili makaleler