using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; using QYZH.InteractiveMagazine.IService; using QYZH.InteractiveMagazine.IService.Dto; using QYZH.InteractiveMagazine.Models.Dto; namespace QYZH.InteractiveMagazine.WebApi.Controllers; /// /// 认证控制器 /// [Route("api/[controller]")] [ApiController] public class AuthController : BaseController { private readonly IAuthService _authService; public AuthController(IAuthService authService) { _authService = authService; } /// /// 用户登录 /// /// 登录信息 /// 登录结果 [AllowAnonymous] [HttpPost("login")] public async Task> LoginAsync([FromBody] LoginInput input) { var result = await _authService.LoginAsync(input.Account, input.Password); return Success(result); } /// /// 用户注册 /// /// 注册信息 /// 是否成功 [AllowAnonymous] [HttpPost("register")] public async Task> RegisterAsync([FromBody] RegisterInput input) { var result = await _authService.RegisterAsync(input); return Success(result, "注册成功"); } /// /// 刷新令牌 /// /// 刷新令牌 /// 新的登录结果 [AllowAnonymous] [HttpPost("refreshToken")] public async Task> RefreshTokenAsync([FromQuery] string refreshToken) { var result = await _authService.RefreshTokenAsync(refreshToken); return Success(result); } }