コード例 #1
0
        /// <summary>
        /// Appends the access token to.
        /// </summary>
        /// <param name="webRequest">The web request.</param>
        public void AppendAccessTokenTo(HttpWebRequest webRequest)
        {
            if (CurrentAccessToken == null)
            {
                throw new ArgumentNullException("CurrentAccessToken is null. A call to Authorize() using an authorization or refresh token should be made first.", "CurrentAccessToken");
            }

            if (DateTime.UtcNow.AddSeconds(-15) < LastAccessTokenRefresh.AddSeconds(CurrentAccessToken.ExpiresIn))
            {
                Authorize(CurrentAccessToken.RefreshToken);
            }

            webRequest.Headers.Add(HttpRequestHeader.Authorization, "Bearer " + Convert.ToBase64String(Encoding.UTF8.GetBytes(CurrentAccessToken.AccessToken)));
        }
コード例 #2
0
        /// <summary>
        /// Gets the access token.
        /// </summary>
        public string GetAccessToken()
        {
            if (CurrentAccessToken == null)
            {
                throw new ArgumentNullException(
                          "CurrentAccessToken is null. A call to Authorize() using an authorization or refresh token should be made first.",
                          "CurrentAccessToken");
            }

            if (DateTime.UtcNow.AddSeconds(-15) < LastAccessTokenRefresh.AddSeconds(CurrentAccessToken.ExpiresIn))
            {
                Authorize(CurrentAccessToken.RefreshToken);
            }

            var token = "Bearer " + Convert.ToBase64String(Encoding.UTF8.GetBytes(CurrentAccessToken.AccessToken));

            return(token);
        }