Ejemplo n.º 1
0
        /// <summary>
        ///     Refreshes the access token.
        /// </summary>
        /// <param name="accessToken">The access token.</param>
        /// <param name="refreshToken">The refresh token.</param>
        /// <returns>Tokens.</returns>
        public Tokens RefreshAccessToken(string accessToken, string refreshToken)
        {
            string       plainJson;
            const string payload = @"{""refresh_token"": ""{RT}""}";

            using (var client = new MyWebClient())
            {
                client.Encoding = Encoding.UTF8;
                client.Headers.Add("Content-Type", "application/json");
                plainJson = client.UploadString(Constants.LinkRefreshToken.Replace("{AT}", accessToken),
                                                payload.Replace("{RT}", refreshToken));
            }

            JsonRefreshTokens.RootObject objRefToken =
                JsonConvert.DeserializeObject <JsonRefreshTokens.RootObject>(plainJson);

            return(new Tokens
            {
                AccessToken = objRefToken.access_token,
                ExpireTimestamp = objRefToken.expiration_date,
                RefreshToken = refreshToken
            });
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Refreshes the access token
        /// </summary>
        /// <returns>Successful</returns>
        public bool RefreshAccessToken()
        {
            try
            {
                JsonRequestRefreshAccessToken payload = new JsonRequestRefreshAccessToken {
                    refresh_token = RefreshToken
                };

                string plainJson = Links.GetNewAccessToken.ExecuteRequest(UserConfig, payload: payload);

                JsonRefreshTokens.RootObject obj =
                    JsonConvert.DeserializeObject <JsonRefreshTokens.RootObject>(plainJson);

                Token          = obj.access_token;
                ExpirationDate = obj.expiration_date;
                TokenType      = obj.token_type;
            }
            catch (Exception)
            {
                return(false);
            }
            return(true);
        }