Пример #1
0
        void oa2client_Authorized(object sender, EventArgs e)
        {
            authBrowser.Visibility = System.Windows.Visibility.Hidden;

            oa2client.ObtainAccesToken();
            savedToken = oa2client.Token;

            HttpWebRequest httpRequest = (HttpWebRequest)WebRequest.Create("https://auth.photosi.com/api/user_profile");
            oa2client.SignHTTPRequest(ref httpRequest);

            WebResponse wr = httpRequest.GetResponse();

            StreamReader stream = new StreamReader(wr.GetResponseStream());
            string text = stream.ReadToEnd();
            MessageBox.Show(text);
        }
Пример #2
0
        void CallAPI_Click(object sender, RoutedEventArgs e)
        {
            OAuth2Client client = new OAuth2Client();
            oa2client.AuthorizationEndpoint = "https://auth.photosi.com/oauth2/authorize/";
            oa2client.TokenEndpoint = "https://auth.photosi.com/oauth2/token/";
            oa2client.ClientId = "c1044bb10aac85c35ba65cce87578d";
            oa2client.ClientSecret = "6741fc500559c29cc9b8f56dde1ac5";

            oa2client.Token = savedToken;

            HttpWebRequest httpRequest = (HttpWebRequest)WebRequest.Create("https://auth.photosi.com/api/user_profile");
            oa2client.SignHTTPRequest(ref httpRequest);

            //token could be refreshed
            savedToken = oa2client.Token;

            WebResponse wr = httpRequest.GetResponse();

            StreamReader stream = new StreamReader(wr.GetResponseStream());
            string text = stream.ReadToEnd();
            MessageBox.Show(text);
        }
Пример #3
0
        /// <summary>
        /// Refresh expired access token
        /// </summary>
        public void RefreshAccessToken()
        {
            if (!IsTokenValid && IsTokenRefreshable)
            {
                //refreshable token needs to refresh
                HttpWebRequest request = (HttpWebRequest)WebRequest.Create(String.Format("{0}?grant_type=refresh_token&client_id={1}refresh_token={2}", _tokenEndpoint, ClientId, _accessToken.RefreshToken));
                request.Headers["Authorization"] = _getClientHeader();
                DateTime tokenReqestDate = DateTime.Now;
                WebResponse response = request.GetResponse();

                _accessToken = _deserializeToken(response.GetResponseStream());
                _accessToken.TokenDate = tokenReqestDate;
            }
        }
Пример #4
0
        /// <summary>
        /// Obtain first access token after authorization
        /// </summary>
        public void ObtainAccesToken()
        {
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(String.Format("{0}?grant_type=authorization_code&client_id={1}&redirect_uri={2}&code={3}", _tokenEndpoint, ClientId, HttpUtility.UrlEncode(_redirect), _code));
            request.Headers["Authorization"] = _getClientHeader();
            DateTime tokenReqestDate = DateTime.Now;
            WebResponse response = request.GetResponse();

            _accessToken = _deserializeToken(response.GetResponseStream());
            _accessToken.TokenDate = tokenReqestDate;
        }