public async Task <UserDto> Handle(Command request, CancellationToken cancellationToken) { var refreshToken = _httpContextAccessor.HttpContext.Request.Cookies["refreshToken"]; if (refreshToken == null) { throw new RestException(HttpStatusCode.BadRequest, new { Token = "not found!" }); } var user = await _context.Users.SingleOrDefaultAsync(u => u.Tokens.Any(t => t.RefreshToken == refreshToken)); if (user == null) { throw new RestException(HttpStatusCode.BadRequest, new { User = "******" }); } var userClaims = await _userManager.GetClaimsAsync(user); var refreshTokenDto = _jwtGenerator.RefreshToken(user, refreshToken, userClaims.ToList()); return(new UserDto { DisplayName = user.DisplayName, Token = refreshTokenDto.JWT, UserName = user.UserName, Role = user.Role }); }