Exemplo n.º 1
0
        public async Task <string> GetRefreshedOAuthToken()
        {
            string result = null;

            using (HttpClient client = ConstructHttpClient(false))
            {
                var request = new HttpRequestMessage(HttpMethod.Post, String.Format(Constants.TOKEN_URI_TEMPLATE, BaseUri));
                request.Content = new FormUrlEncodedContent(new Dictionary <String, String>()
                {
                    { "grant_type", "refresh_token" },
                    { "refresh_token", RefreshToken },
                    { "client_id", ClientId },
                    { "client_secret", ClientSecret }
                });
                HttpResponseMessage response = null;
                try
                {
                    using (response = await client.SendAsync(request))
                    {
                        if (response.StatusCode == HttpStatusCode.OK)
                        {
                            OnshapeRefreshTokenResponse refreshToken = await response.Content.ReadAsAsync <OnshapeRefreshTokenResponse>();

                            result = refreshToken.access_token;
                        }
                    }
                }
                catch (Exception e)
                {
                    throw new OnshapeClientException("Authorization token refresh failed", e);
                }
            }
            return(result);
        }
Exemplo n.º 2
0
        private async void RefreshOAuthTokens(HttpClient client)
        {
            var request = new HttpRequestMessage(HttpMethod.Post, String.Format(Constants.TOKEN_URI_TEMPLATE, BaseUri));

            request.Content = new FormUrlEncodedContent(new Dictionary <String, String>()
            {
                { "grant_type", "refresh_token" },
                { "refresh_token", RefreshToken },
                { "client_id", ClientId },
                { "client_secret", ClientSecret }
            });
            HttpResponseMessage response = null;

            try
            {
                using (response = await client.SendAsync(request))
                {
                    if (response.StatusCode == HttpStatusCode.OK)
                    {
                        OnshapeRefreshTokenResponse refreshToken = await response.Content.ReadAsAsync <OnshapeRefreshTokenResponse>();

                        AccessToken  = refreshToken.access_token;
                        RefreshToken = refreshToken.refresh_token;
                        InitDefaultHeaders(client);
                    }
                }
            }
            catch (Exception e)
            {
                throw new OnshapeClientException("Authorization token refresh failed", e);
            }
        }