public IActionResult RefreshToken([FromBody] UserRefreshTokenRequest request) { try { var accessToken = _authenticationService.RefreshAccessToken(request.AccessToken, request.RefreshToken, out var newRefreshToken); return(new ObjectResult(new { StatusCode = ResponseConstants.Success, AccessToken = accessToken, RefreshToken = newRefreshToken })); } catch (TokenCanNotBeRefreshedException) { return(new ObjectResult(new Result { StatusCode = ResponseConstants.Unauthorized })); } catch (RefreshTokenNotValidException) { return(new ObjectResult(new Result { StatusCode = ResponseConstants.Unauthorized })); } catch (Exception) { return(new ObjectResult(new Result { StatusCode = ResponseConstants.Unknown })); } }
public async Task <IActionResult> RefreshToken([FromBody] UserRefreshTokenRequest request, CancellationToken cancellationToken) { var user = await userManager.GetUserAsync(User); if (user == null) { return(BadRequest()); } await service.UpdateUserRegistrationAsync(user, request.RegistrationToken, cancellationToken); return(Ok()); }
public async Task <IActionResult> Refresh([FromBody] UserRefreshTokenRequest request) { var result = await _identityService.RefreshTokenAsync(request.Token, request.RefreshToken); if (!result.IsSuccess) { return(BadRequest(new AuthFailedResponse { Errors = new[] { EMultiplexConstants.ErrorOccured } })); } return(Ok(new AuthSuccessResponse { Token = result.Token, RefreshToken = result.RefreshToken })); }