Esempio n. 1
0
        public async Task <ActionResult> GetRecommendation(string code, string state)
        {
            if (string.IsNullOrEmpty(code))
            {
                return(RedirectToAction("Index"));
            }
            var AuthorizationInfo   = Utilities.GetAuthorizationInfo();
            var OAuthClient         = new SpotifyCommunication.Authorization(AuthorizationInfo.ClientID, AuthorizationInfo.ClientSecret);
            var RedirectURI         = GetRedirectURI();
            var AuthorizationResult = await OAuthClient.GetAccessTokenAsync(code, RedirectURI);

            if (string.IsNullOrEmpty(AuthorizationResult.access_token))
            {
                return(RedirectToAction("Index"));
            }
            ViewBag.AccessToken = AuthorizationResult.access_token;
            SpotifyCommunication.SpotifyApiLibrary client = new SpotifyCommunication.SpotifyApiLibrary(AuthorizationResult.access_token);
            var CurrentUser = await client.GetCurrentUserInfoAsync();

            ViewBag.Title = $"Welcome {CurrentUser.display_name}";
            ViewBag.User  = CurrentUser;
            SetCookie("SpotifyAccessToken", AuthorizationResult.access_token, AuthorizationResult.ActiveUntil);
            return(View());
        }