.NET IHttpClientFactory: mengkonfigurasi proksi klien bernama
Lampirkan proksi pada pengendali utama klien bernama IHttpClientFactory dan gunakan nama yang sama di tapak panggilan.
Proksi yang dikonfigurasi untuk satu HttpClient bernama tidak mengkonfigurasi setiap klien yang dikembalikan oleh IHttpClientFactory secara automatik. Kekalkan nama pendaftaran dan nama yang diminta bersama-sama.
services.AddHttpClient("via-proxy")
.ConfigurePrimaryHttpMessageHandler(() => new HttpClientHandler
{
Proxy = new WebProxy("http://203.0.113.10:8080"),
UseProxy = true
});Kemudian dapatkan konfigurasi bernama itu:
var client = factory.CreateClient("via-proxy");Titik akhir itu hanyalah ilustrasi. Untuk permintaan perkhidmatan awam yang dibenarkan, senarai proksi HTTP menyediakan calon untuk URL WebProxy klien bernama. Mencipta klien lalai tanpa nama di tempat lain ialah carian yang berbeza, walaupun kedua-dua klien datang dari kilang yang sama yang disuntik.
Konfigurasikan tingkah laku proksi pada peringkat sambungan pada pengendali utama dan bukannya menganggapnya sebagai pengepala permintaan destinasi. Kilang boleh mengurus hayat pengendali secara berasingan daripada objek HttpClient yang dikembalikannya.
Jika panggilan itu dimiliki oleh klien bertaip atau SDK lain, semak pendaftaran mana yang membekalkan HttpClient-nya. Klien bernama yang dikonfigurasi dengan betul tetapi tidak pernah digunakan tidak menjejaskan laluan rangkaian SDK itu.
Gunakan konfigurasi ini untuk dasar penghalaan yang stabil. Menukar pengendali langsung antara operasi kekal sebagai masalah serentak dan hayat yang berasingan.