Twitter4J + OAuth認証でツイートする方法
Twitter4J + OAuth認証でツイートする方法を簡単にまとめます。「OAuth認証でツイートしてみる」ということだけが目的なので、それぞれについての詳しい説明は省いてあります。それらが必要な場合は他の方が多分まとめていると思うのでそちらを参照してください。
所要時間は10〜15分ぐらい?
とりあえず知っておいた方がいいこと(読み飛ばしても大丈夫です)
従来の認証方法はベーシック認証と呼ばれるものでした。アカウント名とパスワードを用いる認証方法です。しかし、これらは8月に廃止されてそれ以降はOAuth認証が推奨の認証方法となります(xAuth認証などもありますがここでは割愛)。
OAuth認証はベーシック認証とは異なり、コンシューマキー、コンシューマシークレット、アクセストークン、アクセストークンシークレットの4つが必要となります。これらをGETすることがOAuth認証最大の山場。以前は敷居が若干高いものでしたが、今はWebブラウザだけで完結してしまうのでとても簡単です。
OAuth認証に必要なものをGETする
- Resister an app をクリック
- Twitterにログインしていない場合は、ログインを求められる
- クリック後、「アプリケーション登録申請」というページが表示されればOK
- 必要事項を記入し、登録
- コンシューマキーとコンシューマシークレットをGET
- 上部にあるYour appsというリンクをクリック
- 登録したアプリケーションの一覧を表示し今回登録したアプリケーション名(もしくはアイコン)をクリック
- ページの中盤に「Consumer key」と「Consumer secret」があるので控えておく
- アクセストークンとアクセストークンシークレットをGET
OAuth認証でツイートする
以下にサンプルコードをおいておきます。ご自身で登録したアプリケーションのコンシューマキー、コンシューマシークレット、アクセストークン、アクセストークンシークレットに置き換えてから実行して下さい。
public void tweet() throws TwitterException { String consumerKey = "consumerKey"; String consumerSecret = "consumerSecret"; String accessToken = "accessToken"; String accessTokenSecret = "accessTokenSecret"; TwitterFactory factory = new TwitterFactory(); Twitter twitter = factory.getInstance(); twitter.setOAuthConsumer(consumerKey,consumerSecret); twitter.setOAuthAccessToken(new AccessToken(accessToken, accessTokenSecret)); twitter.updateStatus("Hello world!"); }
「Hello world!」もしくはご自身で変更した文字列がツイートされればOAuth認証でのツイートは成功です。