Files
mmorales.photo/back/controllers/AuthController.cs
2025-08-28 16:01:55 +02:00

45 lines
1.3 KiB
C#

using Microsoft.AspNetCore.Mvc;
namespace back.controllers;
public class ValidationErrors
{
public string? Field { get; set; }
public string? Message { get; set; }
}
public class ExecutionErrors
{
public Exception? Exception { get; set; }
public string? Message { get; set; }
}
public abstract class ResponseBase
{
public object? Data { get; set; }
public string? Message { get; set; }
public bool Success { get; set; }
public int StatusCode { get; set; }
public ValidationErrors[] ValidationErrors { get; set; }
public ExecutionErrors[] ExecutionErrors { get; set; }
}
public record LoginRequest(string Username, string Password);
[ApiController, Route("api/[controller]")]
public class AuthController(IAuthService authService) : ControllerBase
{
private readonly IAuthService _authService = authService;
[HttpPost, Route("login")]
public async Task<IActionResult> Login([FromBody] LoginRequest loginRequest)
{
// validar que el usuario y la contraseña sean correctos
// obtener el token JWT encriptado
// obtener el refresh token
// devolver el token JWT y el refresh token en los headers de las respuestas
// devolver datos del usuario en el body de la respuesta
}
}