using Apimanager_backend.Dtos; using Apimanager_backend.Exceptions; using Apimanager_backend.Services; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Apimanager_backend.Filters; using Microsoft.AspNetCore.Authorization; using Apimanager_backend.Models; using System.Security.Claims; namespace Apimanager_backend.Controllers { [Route("api/[controller]/[action]")] [ApiController] public class UserController : ControllerBase { private readonly IUserService userService; public UserController(IUserService userService) { this.userService = userService; } [HttpGet] [Authorize(Roles = "User")] public async Task>> UserInfo() { var userId = User.Claims.First(x => x.Type == "userId").Value; var userInfo = await userService.GetUserAsync(int.Parse(userId)); var res = new ResponseBase( code:1000, message:"Success", data:userInfo ); return Ok(res); } } }