public async Task <IActionResult> Callback(string code, string state) { string sessionState = HttpContext.Session.GetString(Constants.GIT_HUB_AUTH_STATE_SESSION_KEY); if (sessionState != null && sessionState == state) { string token = await GetAuthToken(code, state); HttpContext.Session.SetString( Constants.GIT_HUB_AUTH_TOKEN_SESSION_KEY, token); Result <string> loginResult = await _gitHubClient.GetLoginAsync(token); if (loginResult.Success) { HttpContext.Session.SetString(Constants.GIT_HUB_LOGIN_KEY, loginResult.Data); } } return(Redirect("/")); }