Google.PowerShell.Common.AuthenticateWithSdkCredentialsExecutor.RefreshTokenAsync C# (CSharp) 메소드

RefreshTokenAsync() 공개 메소드

Refreshes the token by calling to ActiveUserConfig.GetActiveUserToken
public RefreshTokenAsync ( CancellationToken taskCancellationToken ) : Task
taskCancellationToken System.Threading.CancellationToken
리턴 Task
        public async Task<bool> RefreshTokenAsync(CancellationToken taskCancellationToken)
        {
            TokenResponse userToken = await ActiveUserConfig.GetActiveUserToken(taskCancellationToken, refresh: true);
            if (userToken != null && userToken.AccessToken != null)
            {
                return true;
            }
            return false;
        }

Usage Example

        public void TestRefreshTokenAsync()
        {
            AuthenticateWithSdkCredentialsExecutor activeUserCred = new AuthenticateWithSdkCredentialsExecutor();
            string currentAccessToken = activeUserCred.GetAccessTokenForRequestAsync().Result;

            bool refreshed = activeUserCred.RefreshTokenAsync(_cancelToken).Result;
            Assert.IsTrue(refreshed, "RefreshTokenAsync should return true.");

            string refreshedAccessToken = activeUserCred.GetAccessTokenForRequestAsync().Result;
            Assert.IsTrue(
                !Equals(currentAccessToken, refreshedAccessToken),
                "A different token should be returned when RefreshTokenAsync is called again.");

            refreshed = activeUserCred.RefreshTokenAsync(_cancelToken).Result;
            Assert.IsTrue(refreshed, "RefreshTokenAsync should return true.");

            string refreshedAccessTokenTwo = activeUserCred.GetAccessTokenForRequestAsync().Result;
            Assert.IsTrue(
                !Equals(refreshedAccessToken, refreshedAccessTokenTwo),
                "A different token should be returned when RefreshTokenAsync is called again.");
            Assert.IsTrue(
                !Equals(currentAccessToken, refreshedAccessTokenTwo),
                "A different token should be returned when RefreshTokenAsync is called again.");
        }