عايز اعمل Endpoint تجيبلي الـ User اللي عامل Login في اللحظة دي هعملها في الـ Account Controller
[HttpGet("getcurrentuser")] // GET : /api/accounts/getcurrentuser
// Or this is only get endpoint in controller
[Authorize]
[HttpGet] // GET : /api/accounts
public async Task<ActionResult<UserDto>> GetCurrentUser()
{
var email = User.FindFirstValue(ClaimTypes.Email);
var user = await _userManager.FindByEmailAsync(email);
return Ok(new userDto()
{
DisplayName = user.DisplayName,
Email = user.Email,
Token = await _tokenService.CreateTokenAsync(user, _userManager)
})
}
عندي في الـ DB جدول اسمه Token دا المفروض هيتخزن فيه الـ Users Tokens بس مش دلوقتي فانا النهاردة هعمل واحد جديد
مش محتاج أعمل Validate على أي حاجة لانه لو دخل الـ Endpoint يعني الايميل موجود وهو Authorized بالفعل