4

C# と DotNetOpenAuth を使用して Twitter アカウントにツイートを投稿する方法の例を探しています。WinForms アプリケーションから実行したい。私が見つけた例は、ASP.NET と WebForms を使用しているようです。具体的には、「検証コード」に引っかかっています。これが私がこれまでに持っているコードです:

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);
}

ベリファイア コードを null にすることはできないというエラーが表示されます。

4

1 に答える 1

1

必要な作業は次のとおりです。

  1. RequestUserAuthorization メソッドは、認証ページへの URL を返します。
  2. ユーザーをそのページ (通常は Process.Start(url)) にリダイレクトする必要があります。ここで、ユーザーはアプリケーションを承認します。
  3. Twitter は、検証者である複数桁の番号を持つページにユーザーをリダイレクトします。
  4. ユーザーを承認ページに送信した後、ユーザーが検証ツールを入力してアプリケーションに送信できるように、アプリケーションはダイアログまたはプロンプトで待機する必要があります。
  5. ベリファイアを取得したら、それを 2 番目の引数として ProcessUserAuthorization に渡します。

これは、似たようなもので、コード例があると言うブログ投稿です。

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

于 2012-09-13T02:11:25.710 に答える