Junior — Middle
Vysvetlite koncept používania filtrov v ASP.NET a ich úlohu pri spracovaní požiadaviek.
sobes.tech AI
Odpoveď od AI
Vo frameworku ASP.NET sú filtre komponenty, ktoré umožňujú vykonávať dodatočnú logiku pred alebo po spracovaní HTTP požiadavky kontrolérom. Pomáhajú oddeliť priečne témy, ako je autorizácia, zaznamenávanie, spracovanie chýb a kešovanie.
Úloha filtrov pri spracovaní požiadaviek:
- Umožňujú opakovane použiť kód bez zmeny obchodnej logiky.
- Riadi životný cyklus požiadavky, napríklad kontrolou oprávnení pred vykonaním akcie.
- Môžu meniť vstupné údaje alebo výsledok odpovede.
Príklad použitia filtra autorizácie:
public class CustomAuthorizationFilter : Attribute, IAuthorizationFilter
{
public void OnAuthorization(AuthorizationFilterContext context)
{
if (!context.HttpContext.User.Identity.IsAuthenticated)
{
context.Result = new UnauthorizedResult();
}
}
}
// Aplikácia filtra na kontrolér alebo akciu
[CustomAuthorizationFilter]
public IActionResult SecureAction()
{
return View();
}