余白

https://blog.lacolaco.net/ に移転しました

C#でTwitterアプリを作る 第1回 OAuth

第0回ではCoreTweetの特徴と導入について紹介しました。 今回から実際の使い方について紹介します。

認証

Twitterアプリを作る上でまず最初に必要なのは認証です。CoreTweetではTokensというクラスが認証情報を管理します。 Tokensのインスタンスを生成する方法は、

  • すでに発行されたトークンを利用
  • OAuthによるトークン発行
  • OAuth2.0 (application-only authentication)

の3パターンがあります。

すでに発行されたトークンを利用

非公開のツールやbotなど、広く配布しないプログラムだと、Twitter Developersで自分のアクセストークンを発行してそれをプログラムに渡して直接APIを叩くことがしばしばあります。 CoreTweetでは次のようにしてTokensインスタンスを生成します

var tokens = CoreTweet.Tokens.Create("ConsumerKey", "ConsumerSecret", "AccessToken", "AccessSecret");
OAuthによるトークン発行

ユーザーに対してブラウザで認証を行わせてPINコードを取得してもらい、トークンを生成する方法は次のように行います。

var session = CoreTweet.OAuth.Authorize("ConsumerKey", "ConsumerSecret");
var url = session.AuthorizeUri; // -> user open in browser
//get pin
tokens = CoreTweet.OAuth.GetTokens(session, "PIN code");
OAuth2.0(application-only authentication)

OAuth2.0とは、Twitterの認証方法の1つで、アカウントではなくアプリケーション単位でAPIを操作するための認証方法です。詳しくはこちらをどうぞ。 CoreTweetで利用するには次のようにしてOAuth2Tokenインスタンスを生成します。

var appAuth = CoreTweet.OAuth2.GetToken("ConsumerKey", "ConsumerSecret");

どの認証方法もCoreTweetなら直感的に、スマートに記述できます。

次回はこれらの認証情報を使って実際にタイムラインを取得し、ツイートを投稿する方法を紹介します。