コード例 #1
0
ファイル: Class1.cs プロジェクト: lin-e/KeylessTwitter
 public bool tryLogin()
 {
     if (new TwitterAuthStatus[] { TwitterAuthStatus.SigningIn, TwitterAuthStatus.Success }.Contains(twitterStatus))
     {
         throw new InvalidTwitterActionException("You are already sign(ing) in");
     }
     twitterStatus = TwitterAuthStatus.SigningIn;
     try
     {
         if (true)
         {
             HttpWebRequest webRequest = createWebRequest_GET("https://twitter.com/", new string[][] { }, "");
             using (HttpWebResponse webResponse = (HttpWebResponse)webRequest.GetResponse())
             {
                 authenticityToken = new Regex("<input type=\"hidden\" value=\"(.*?)\" name=\"authenticity_token\">").Match(new StreamReader(webResponse.GetResponseStream()).ReadToEnd()).Groups[1].ToString();
             }
         }
         if (true)
         {
             string baseSubmit = "session%5Busername_or_email%5D={0}&session%5Bpassword%5D={1}&return_to_ssl=true&scribe_log=&redirect_after_login=%2F&authenticity_token={2}&js_inst=1";
             HttpWebRequest webRequest = createWebRequest_POST("https://twitter.com/sessions", new string[][] { }, Encoding.ASCII.GetBytes(string.Format(baseSubmit, authUsername, authPassword, authenticityToken)), "application/x-www-form-urlencoded");
             bool containsLangCookie = false;
             using (HttpWebResponse webResponse = (HttpWebResponse)webRequest.GetResponse())
             {
                 foreach (Cookie singleResponseCookie in webResponse.Cookies)
                 {
                     if (singleResponseCookie.Name == "lang")
                     {
                         containsLangCookie = true;
                         break;
                     }
                 }
             }
             if (!(containsLangCookie))
             {
                 throw new InvalidTwitterActionException("Failed to sign in");
             }
         }
         twitterStatus = TwitterAuthStatus.Success;
         if (directMessageEvents)
         {
             checkForNewMessage();
         }
         return true;
     }
     catch
     {
         twitterStatus = TwitterAuthStatus.Failed;
         return false;
     }
 }
コード例 #2
0
 public bool tryLogin()
 {
     if (new TwitterAuthStatus[] { TwitterAuthStatus.SigningIn, TwitterAuthStatus.Success }.Contains(twitterStatus))
     {
         throw new InvalidTwitterActionException("You are already sign(ing) in");
     }
     twitterStatus = TwitterAuthStatus.SigningIn;
     try
     {
         if (true)
         {
             HttpWebRequest webRequest = createWebRequest_GET("https://twitter.com/", new string[][] { }, "");
             using (HttpWebResponse webResponse = (HttpWebResponse)webRequest.GetResponse())
             {
                 authenticityToken = new Regex("<input type=\"hidden\" value=\"(.*?)\" name=\"authenticity_token\">").Match(new StreamReader(webResponse.GetResponseStream()).ReadToEnd()).Groups[1].ToString();
             }
         }
         if (true)
         {
             string         baseSubmit         = "session%5Busername_or_email%5D={0}&session%5Bpassword%5D={1}&return_to_ssl=true&scribe_log=&redirect_after_login=%2F&authenticity_token={2}&js_inst=1";
             HttpWebRequest webRequest         = createWebRequest_POST("https://twitter.com/sessions", new string[][] { }, Encoding.ASCII.GetBytes(string.Format(baseSubmit, authUsername, authPassword, authenticityToken)), "application/x-www-form-urlencoded");
             bool           containsLangCookie = false;
             using (HttpWebResponse webResponse = (HttpWebResponse)webRequest.GetResponse())
             {
                 foreach (Cookie singleResponseCookie in webResponse.Cookies)
                 {
                     if (singleResponseCookie.Name == "lang")
                     {
                         containsLangCookie = true;
                         break;
                     }
                 }
             }
             if (!(containsLangCookie))
             {
                 throw new InvalidTwitterActionException("Failed to sign in");
             }
         }
         twitterStatus = TwitterAuthStatus.Success;
         if (directMessageEvents)
         {
             checkForNewMessage();
         }
         return(true);
     }
     catch
     {
         twitterStatus = TwitterAuthStatus.Failed;
         return(false);
     }
 }