Exemplo n.º 1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="value"></param>
        /// <param name="tokenKey"></param>
        /// <param name="tokenSecretKey"></param>
        /// <returns></returns>
        public static AccessTokenInfo Create(String value, String tokenKey, String tokenSecretKey)
        {
            AccessTokenInfo t = new AccessTokenInfo("", "");

            String[] ss = value.Split('&');
            Dictionary <String, String> d = new Dictionary <string, string>();

            foreach (string t1 in ss)
            {
                if (t1.Contains("=") == false)
                {
                    continue;
                }
                String[] sss = t1.Split('=');
                if (sss.Length == 2)
                {
                    d[sss[0].ToLower()] = sss[1];
                }
            }
            t._values = d;
            if (d.ContainsKey(tokenKey))
            {
                t.Token = d[tokenKey];
            }
            if (d.ContainsKey(tokenSecretKey))
            {
                t.TokenSecret = d[tokenSecretKey];
            }
            return(t);
        }
Exemplo n.º 2
0
 /// <summary>
 /// 
 /// </summary>
 /// <param name="value"></param>
 /// <param name="tokenKey"></param>
 /// <param name="tokenSecretKey"></param>
 /// <returns></returns>
 public static AccessTokenInfo Create(String value, String tokenKey, String tokenSecretKey)
 {
     AccessTokenInfo t = new AccessTokenInfo("", "");
     String[] ss = value.Split('&');
     Dictionary<String, String> d = new Dictionary<string, string>();
     foreach (string t1 in ss)
     {
         if (t1.Contains("=") == false) { continue; }
         String[] sss = t1.Split('=');
         if (sss.Length == 2)
         {
             d[sss[0].ToLower()] = sss[1];
         }
     }
     t._values = d;
     if (d.ContainsKey(tokenKey))
     {
         t.Token = d[tokenKey];
     }
     if (d.ContainsKey(tokenSecretKey))
     {
         t.TokenSecret = d[tokenSecretKey];
     }
     return t;
 }
Exemplo n.º 3
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="authorizeInfo"></param>
        /// <param name="oauthVerifier"></param>
        /// <returns></returns>
        public AccessTokenInfo GetAccessToken(AuthorizeInfo authorizeInfo, String oauthVerifier)
        {
            AuthorizeInfo ai = authorizeInfo;
            SignatureInfo si = OAuthClient.GenerateSignature(new Uri(this.AccessTokenUrl), this.ConsumerKey, this.ConsumerSecret
                                                             , ai.RequestToken, ai.RequestTokenSecret, "POST", OAuthClient.GenerateTimeStamp(), OAuthClient.GenerateNonce()
                                                             , OAuthClient.SignatureTypes.HMACSHA1);
            HttpClient cl = new HttpClient(String.Format("{0}?{1}&oauth_verifier={2}&oauth_signature={3}", this.AccessTokenUrl
                                                         , si.NormalizedRequestParameters, oauthVerifier, si.Signature));
            String s = cl.GetBodyText();

            return(AccessTokenInfo.Create(s, "oauth_token", "oauth_token_secret"));
        }
Exemplo n.º 4
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="requestToken"></param>
        /// <param name="requestTokenSecret"></param>
        /// <returns></returns>
        public AccessTokenInfo GetAccessToken(String requestToken, String requestTokenSecret)
        {
            String nonce     = OAuthClient.GenerateNonce();
            String timestamp = OAuthClient.GenerateTimeStamp();
            String url       = this.AccessTokenUrl;

            SignatureInfo si = OAuthClient.GenerateSignature(new Uri(url), this.ConsumerKey, this.ConsumerSecret
                                                             , requestToken, requestTokenSecret, "POST", timestamp, nonce, OAuthClient.SignatureTypes.HMACSHA1);
            HttpClient cl = new HttpClient(String.Format("{0}?{1}&oauth_signature={2}"
                                                         , url, si.NormalizedRequestParameters, si.Signature));
            String result = cl.GetBodyText();

            return(AccessTokenInfo.Create(result, "oauth_token", "oauth_token_secret"));
        }