Junior — Middle
Selgitage filtrite kasutamise kontseptsiooni ASP.NET-is ja nende rolli päringute töötlemisel
sobes.tech AI
Vastus AI-lt
ASP.NET filtri on komponendid, mis võimaldavad täiendavat loogikat täita enne või pärast HTTP-päringu töötlemist kontrolleri poolt. Nad aitavad eraldada ristküljelisi ülesandeid nagu autoriseerimine, logimine, vigade käsitlemine ja vahemälu.
Filtrite roll päringute töötlemisel:
- Annab võimaluse taaskasutada koodi ilma äriloogikat muutmata.
- Halda päringu elutsüklit, näiteks kontrollides juurdepääsuõigusi enne tegevuse täitmist.
- Võivad muuta sisendeid või vastuse tulemust.
Näide autoriseerimisfiltri kasutamisest:
public class CustomAuthorizationFilter : Attribute, IAuthorizationFilter
{
public void OnAuthorization(AuthorizationFilterContext context)
{
if (!context.HttpContext.User.Identity.IsAuthenticated)
{
context.Result = new UnauthorizedResult();
}
}
}
// Filtri rakendamine kontrollerile või tegevusele
[CustomAuthorizationFilter]
public IActionResult SecureAction()
{
return View();
}