Junior — Middle
Explique o conceito de uso de filtros no ASP.NET e o seu papel no processamento de pedidos.
sobes.tech IA
Resposta da IA
No ASP.NET, os filtros são componentes que permitem executar lógica adicional antes ou depois do processamento de uma solicitação HTTP pelo controlador. Eles ajudam a separar tarefas transversais, como autorização, registo, tratamento de erros e cache.
Papel dos filtros no processamento de solicitações:
- Permitem incorporar código reutilizável sem alterar a lógica de negócio.
- Gerenciam o ciclo de vida da solicitação, por exemplo, verificando permissões antes de executar uma ação.
- Podem modificar os dados de entrada ou o resultado da resposta.
Exemplo de uso de um filtro de autorização:
public class CustomAuthorizationFilter : Attribute, IAuthorizationFilter
{
public void OnAuthorization(AuthorizationFilterContext context)
{
if (!context.HttpContext.User.Identity.IsAuthenticated)
{
context.Result = new UnauthorizedResult();
}
}
}
// Aplicação do filtro ao controlador ou ação
[CustomAuthorizationFilter]
public IActionResult SecureAction()
{
return View();
}