twitterOAuthを使ってPHPでTwitter連携

2015年7月に動作確認しています。

 

の続きです。

Authorize.php(認証用URLの生成)

Callback.php(アクセストークンの取得、保存)

Tweet.php(ツイートの投稿、プロフィールの取得)

 と遷移するページを作ります。説明がわかりづらいしめんどくさい場合は一番下のgithubのコードを見たほうがよく分かるかもしれません。

twitterOAuthのインストール

  • twitterOAuthのgithubページから、最新版をダウンロード(2015年7月現在0.5.3)

  • 解凍したフォルダを"twitterOAuth"にリネームし、下の様に、認証ページのPHPと同ディレクトリにフォルダを配置する(最終的なディレクトリ構造は↓)
  • example/

    ├ twitterOAuth/

    ├ authorize.php

    ├ callback.php

    ├ tweet.php

    └ initialize.php 

初期設定(initialize.php

  • Twitterで登録したアプリケーションのコンシューマキー、コンシューマシークレット、そして認証後にコールバックするURLを設定したphpファイルを作成します。アプリケーションを登録してない場合は下のリンクを参考に登録しましょう。

  • 今回コールバックするのは"callback.php"ですが、相対パスだと認証が上手く通らないので、URLの形式で表記します(localhost直下の場合、http://localhost/example/callback.php等)

    Initialize

認証用URLの生成ページ作成(authorize.php

  • アプリケーションのConsumerKeyとConsumerSecretを用意する[URL]
  • 公式ドキュメントの通りにコードを入力するとうごきます(丸投げ)

  • 一応自分が書いたコードを貼り付けて起きます、上記とほとんど変わりませんが、コンシューマキー等の入力を共通化するために外部(initialize.php)から読み込んでいます。

  • 上手く実行できると、Authorizeのリンクを押すとTwitterの認証ページに行くことが出来ます。

    f:id:qrbys:20150716150107p:image

    f:id:qrbys:20150716144759p:image

アクセストークンの取得、保存(callback.php

  • 連携アプリを認証した後、コールバック先でアクセストークンを取得し、セッション関数に保存します。

  • 実行すると、認証後にTweetリンクが表示されたページに飛ぶことが出来ます。

    f:id:qrbys:20150716145220p:image

ツイート、アカウントプロフィールの取得(tweet.php

  • callback.phpで保存したアクセストークンを使い、"Hello,world!"と呟き、プロフィールを取得します。

    f:id:qrbys:20150716145635p:image

    f:id:qrbys:20150716220129p:image

 

 

以上でtwitterOAuthを用いた認証からツイートまでは終了です、これでセッションにトークンが一時的に保存されるので、セッションが破棄されるまでは認証を繰り返さずにAPIの仕様が出来ます。

今回使用したファイルは全てgithubにあげているので、参考になれば使ってください。