2012-09-12 51 views
4

我想查找一個如何簡單地在我的Twitter帳戶上使用C#和DotNetOpenAuth發佈消息的例子。我想從WinForms應用程序中完成它。我發現的例子似乎是使用ASP.NET和WebForms。具體來說,我越來越掛在「驗證碼」上。這裏是我到目前爲止的代碼:使用DotNetOpenAuth發佈Twitter消息推文

private McMurryTokenManager TokenManager 
{ 
    get 
    { 
     McMurryTokenManager tokenManager = null; 

     string consumerKey = ConsumerKey; 
     string consumerSecret = ConsumerSecret; 
     if (!string.IsNullOrEmpty(consumerKey)) 
     { 
      tokenManager = new McMurryTokenManager 
       { ConsumerKey = consumerKey, ConsumerSecret = consumerSecret }; 
     } 

     return tokenManager; 
    } 
} 

public Form1() 
{ 
    InitializeComponent(); 

    var twitter = new DesktopConsumer(TwitterConsumer.ServiceDescription, TokenManager); 
    string requestToken; 
    twitter.RequestUserAuthorization(null, null, out requestToken); 
    var accessTokenResponse = twitter.ProcessUserAuthorization(requestToken, null); 
} 

我收到一個錯誤說驗證碼不能爲空。

回答

1

這裏就是你需要做的:

  1. 的RequestUserAuthorization方法返回一個URL到一個授權頁面。
  2. 您應該將用戶重定向到該頁面,通常是Process.Start(url),用戶將授權您的應用程序。
  3. Twitter將用戶重定向到具有多位數字的頁面,這是驗證者。
  4. 將用戶發送到授權頁面後,應用程序應該等待對話框或提示,以便用戶可以輸入驗證程序並將其提交給應用程序。
  5. 一旦你有驗證者,將它作爲第二個參數傳遞給ProcessUserAuthorization。

這裏的博客貼子,說的東西相似,有一個代碼示例:

http://whelkaholism.blogspot.com/2010/08/c-doing-stuff-with-google-using-oauth.html

相關問題