public object Refresh(RefreshCredentials model) { RefreshTokenData _rtd = null; var storedToken = _dc.GetString(model.RefreshToken); if (!string.IsNullOrEmpty(storedToken) && !string.IsNullOrWhiteSpace(storedToken)) { _rtd = JsonConvert.DeserializeObject <RefreshTokenData> (storedToken); } var isValid = false; if (_rtd != null) { isValid = (model.UserId == _rtd.UserID && model.RefreshToken == _rtd.RefreshToken); } if (isValid) { _dc.Remove(model.RefreshToken); return(New(model.UserId)); } return(null); }
public IActionResult RefreshToken(RefreshCredentials model) { if (!ModelState.IsValid) { return(BadRequest()); } var result = _service.Refresh(model); if (result == null) { return(BadRequest(new string[] { "Error: Invalid token." })); } return(Ok(result)); }