예제 #1
0
        public ActionResult <UserDto> RefreshToken([FromBody] RefreshUserDto refreshUserDto)
        {
            var user = _userService.RefreshUserToken(refreshUserDto);

            if (user == null)
            {
                return(Unauthorized());
            }
            ;

            return(Ok(user));
        }
예제 #2
0
        public UserDto RefreshUserToken(RefreshUserDto refreshUserDto)
        {
            var name = _jwtService.ExtractName(refreshUserDto.Token);
            var user = _userRepository.GetUserByUsername(name);

            if (user == null || user.RefreshToken != refreshUserDto.RefreshToken)
            {
                return(null);
            }
            else
            {
                //Update refresh token
                var userDto = _jwtService.CreateToken(user);
                user.RefreshToken = userDto.RefreshToken;
                _userRepository.SaveChanges();

                return(userDto);
            }
        }