O'rnatilgan filtrlar quyidagi vazifalarni bajaradi



Yüklə 5,35 Kb.
tarix13.12.2023
ölçüsü5,35 Kb.
#140024
filtrlar


ASP.NET Core filtrlari so'rovni qayta ishlash jarayonidagi muayyan bosqichlardan oldin yoki keyin kodni bajarishga imkon beradi.
O'rnatilgan filtrlar quyidagi vazifalarni bajaradi:
Avtorizatsiya, resurslarga kirishni oldini olish, foydalanuvchiga ruxsat berilmaydi.
Javobni keshlash, keshlangan javobni qaytarish uchun so'rov quvurini qisqa tutashuv.
Kesish funksiyalarini boshqarish uchun maxsus filtrlar yaratishingiz mumkin. Oxir-oqibat funksiyalarga misollar xatolarni qayta ishlash, keshlash, konfiguratsiya, avtorizatsiya va jurnalni o'z ichiga oladi. Filtrlar kodning takrorlanishini oldini oladi. Misol uchun, siz xatolarni qayta ishlashni istisno filtri yordamida birlashtirishingiz mumkin.
Ushbu hujjat Razor sahifalari, API kontrollerlari va ko'rinishga ega kontrollerlar uchun amal qiladi. Filtrlar to'g'ridan-to'g'ri Razor komponentlari bilan ishlamaydi . Filtr faqat quyidagi hollarda komponentga bilvosita ta'sir qilishi mumkin:
Komponent sahifaga yoki ko'rinishga o'rnatilgan.
Sahifa yoki kontroller va ko'rinish filtrdan foydalanadi.
Filtrlar qanday ishlaydi
Filtrlar ASP.NET Core harakatni chaqirish quvur liniyasida ishlaydi , ba'zan filtr quvur liniyasi deb ataladi . Filtr liniyasi ASP.NET Core bajarish uchun amalni tanlagandan keyin ishlaydi:
Filtr turlari
Har bir filtr turi filtr quvur liniyasining ma'lum bir bosqichida amalga oshiriladi:
Avtorizatsiya filtrlari :
Avval buyruqni bajaring.
Foydalanuvchining so'rov uchun vakolatli yoki yo'qligini aniqlang.
Agar so'rov ruxsat etilmagan bo'lsa, quvur liniyasining qisqa tutashuvi.
Resurs filtrlari :
Avtorizatsiyadan keyin amalga oshiriladi.
OnResourceExecuting filtr quvurining qolgan qismidan oldin kodni bajaradi. Misol uchun, OnResourceExecutingu kodni model bog'lanishidan oldin bajaradi.
OnResourceExecuted quvur liniyasining qolgan qismi tugagandan so'ng kodni bajaradi.
Harakat filtrlari :
Harakat usulini chaqirishdan oldin va keyin darhol ishga tushiring.
Harakatga berilgan argumentlarni o'zgartirishi mumkin.
Harakat tomonidan qaytarilgan natijani o'zgartirishi mumkin.
Razor sahifalarida qo'llab-quvvatlanmaydi .
Oxirgi nuqta filtrlari :
Harakat usulini chaqirishdan oldin va keyin darhol ishga tushiring.
Harakatga berilgan argumentlarni o'zgartirishi mumkin.
Harakat tomonidan qaytarilgan natijani o'zgartirishi mumkin.
Razor sahifalarida qo'llab-quvvatlanmaydi .
Har ikkala harakatlar va marshrutni ishlov beruvchiga asoslangan so'nggi nuqtalarda chaqirilishi mumkin.
Istisno filtrlari ma'lumotlar javob organiga yozilishidan oldin yuzaga keladigan ishlov berilmagan istisnolarga global siyosatlarni qo'llaydi.
Natija filtrlari:
Harakat natijalari bajarilishidan oldin va keyin darhol ishga tushiring.
Harakat usuli muvaffaqiyatli bajarilgan taqdirdagina amalga oshiriladi.
Taqdimotni o'rab olish yoki formatlashning bajarilishi kerak bo'lgan mantiq uchun foydalidir.
Quyidagi diagramma filtr turlarining filtr quvur liniyasida qanday o'zaro ta'sirini ko'rsatadi:
Razor Pages, shuningdek Razor Page ishlov beruvchisidan oldin va keyin ishlaydigan Razor sahifa filtrlarini qo'llab-quvvatlaydi.
Amalga oshirish
Filtrlar turli interfeys ta'riflari orqali sinxron va asinxron ilovalarni qo'llab-quvvatlaydi.
Sinxron filtrlar quvur liniyasi bosqichidan oldin va keyin bajariladi. Masalan, OnActionExecuting harakat usuli chaqirilishidan oldin chaqiriladi, OnActionExecuted esa harakat usuli qaytgandan keyin chaqiriladi:
public class SampleActionFilter : IActionFilter
{
public void OnActionExecuting(ActionExecutingContext context)
{
// Do something before the action executes.
}
public void OnActionExecuted(ActionExecutedContext context)
{
// Do something after the action executes.
}
}
Yüklə 5,35 Kb.

Dostları ilə paylaş:




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©muhaz.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin