/
qwiklly
/
cms
Обзор
Документация
Войти
/
qwiklly
/
cms
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
trunk
apps/server/Cms.App/Controllers/AuthController.cs
49 строк
1 KB
exstarzii
refactor: add result dto
01 авг 2023, 16:25
01 авг 2023, 16:25
46a0be3
Код
Авторство
О чём код?
using Cms.Dto; using Cms.Services; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Identity; using Microsoft.AspNetCore.Mvc; namespace Cms.Controllers { [ApiController] [Route("api/v0/Auth")] public class AuthController : ControllerBase { private readonly AuthService _authService; public AuthController(AuthService authService) { _authService = authService; } [HttpPost] public async Task<ActionResult<LoginResultDto>> Login([FromBody] LoginDto loginDto) { string username = loginDto.Email; string password = loginDto.Password; var authResult = await _authService.Login(username, password); if (authResult.Success) { return Ok(new LoginResultDto(authResult.AccessToken, authResult.RefreshToken)); } return Unauthorized(); } [HttpPost("refresh")] public async Task<ActionResult<LoginResultDto>> RefreshToken([FromBody] RefreshTokenDto refreshTokenDto) { string username = refreshTokenDto.Username; string refreshToken = refreshTokenDto.RefreshToken; var authResult = await _authService.RefreshToken(username, refreshToken); if (authResult.Success) { return Ok(new LoginResultDto(authResult.AccessToken, authResult.RefreshToken)); } return Unauthorized(); } } }