public async Task <ActionResult <User> > RefreshToken(RefreshToken.Query query) { var principal = GetPrincipalFromExpiredToken(query.Token); query.Username = principal.Claims.FirstOrDefault(x => x.Type == ClaimTypes.NameIdentifier)?.Value; return(await _mediator.Send(query)); }
public async Task <ActionResult <User> > Refresh(RefreshToken.Query query) //need to validate expired token in order to refresh here, because API will not be able to do it due to expired //status { var principal = GetPrincipalFromExpiredToken(query.Token); query.UserName = principal.Claims.FirstOrDefault(x => x.Type == ClaimTypes.NameIdentifier)?.Value; return(await Mediator.Send(query)); }
public async Task <IActionResult> Refresh(RefreshToken.Query query, CancellationToken cancellationToken) { UserDto user = await Mediator.Send(query, cancellationToken); return(Ok(user)); }