.NET 6+ da ServiceStack HttpUtils proksi sozlamalari
.NET 6+ umumiy klientining proksisini ishga tushirish vaqtida sozlang; fabrikani keyinroq o'zgartirish mavjud klientni almashtirmaydi.
ServiceStack'ning .NET 6+ buildlarida HTTP Utils dangasa umumiy HttpClient yaratadi. Uning handler fabrikasini ilova ishga tushishi vaqtida, birinchi yordamchi chaqiruvidan oldin sozlang:
ServiceStack.HttpUtils.HttpClientHandlerFactory = () =>
new System.Net.Http.HttpClientHandler
{
UseProxy = true,
Proxy = new System.Net.WebProxy("http://proxy.example:8080"),
AutomaticDecompression =
System.Net.DecompressionMethods.Brotli |
System.Net.DecompressionMethods.Deflate |
System.Net.DecompressionMethods.GZip
};Agar umumiy klient allaqachon mavjud bo'lsa, bu fabrikani o'zgartirish uni qayta sozlamaydi. Keyingi tayinlash samarasiz ko'rinsa, birinchi tekshiruv aynan shu vaqt. HTTP proksi ro'yxatidan HTTP so'nggi nuqtasini ommaviy marshrut uchun o'sha umumiy klient yaratilishidan oldin tanlash mumkin.
Proksi hisobi uchun WebProxy.Credentials ni ilova konfiguratsiyasi orqali sozlang. HttpClientHandler.UseDefaultCredentials server hisobiga tegishli va o'sha proksi ob'ektining hisob ma'lumotlarini avtomatik to'ldirmaydi.
Eski HttpWebRequest va requestFilter misoli avvalgi amalga oshirishga qaratilgan. Yangi shaklda so'rov konfiguratsiyasi so'rov maydonlarini qamrab oladi, handler esa ulanish marshrutlashiga egalik qiladi.
Allaqachon o'rnatilgan maxsus klient fabrikasini yoki ilovaning HTTP klient fabrikasi egalik tartibini saqlang. Bu handler fabrikasi umumiy siyosat; bir vaqtda ishlaydigan bog'liq bo'lmagan marshrutlar alohida egalikdagi klientlarni talab qiladi.