Sobes.tech
Junior — Middle

Explica el concepto de uso de filtros en ASP.NET y su papel en el procesamiento de solicitudes

sobes.tech AI

Respuesta de la IA

En ASP.NET, los filtros son componentes que permiten realizar lógica adicional antes o después del procesamiento de una solicitud HTTP por parte del controlador. Ayudan a separar tareas transversales, como autorización, registro, manejo de errores y almacenamiento en caché.

El papel de los filtros en el procesamiento de solicitudes:

  • Permiten incorporar código reutilizable sin modificar la lógica empresarial.
  • Gestionan el ciclo de vida de la solicitud, por ejemplo, verificando permisos antes de ejecutar una acción.
  • Pueden modificar los datos entrantes o el resultado de la respuesta.

Ejemplo de uso de un filtro de autorización:

public class CustomAuthorizationFilter : Attribute, IAuthorizationFilter
{
    public void OnAuthorization(AuthorizationFilterContext context)
    {
        if (!context.HttpContext.User.Identity.IsAuthenticated)
        {
            context.Result = new UnauthorizedResult();
        }
    }
}

// Aplicación del filtro al controlador o acción
[CustomAuthorizationFilter]
public IActionResult SecureAction()
{
    return View();
}