前提・実現したいこと
恐れ入ります。
php でTwitterのOAuth認証を行おうと思い、Qiitaで掲載されていたサンプルコードを使いながら実装を進めているところですが、login.php実装時に500エラーが出現してしまいます。
####参考にしたコード
https://qiita.com/sofpyon/items/982fe3a9ccebd8702867
login
1session_start(); 2 3require_once 'common.php'; 4require_once 'twitteroauth/autoload.php'; 5 6use Abraham\TwitterOAuth\TwitterOAuth; 7 8//TwitterOAuth をインスタンス化 9$connection = new TwitterOAuth(CONSUMER_KEY, CONSUMER_SECRET); 10 11//コールバックURLをここでセット 12$request_token = $connection->oauth('oauth/request_token', array('oauth_callback' => OAUTH_CALLBACK)); 13 14//callback.phpで使うのでセッションに入れる 15$_SESSION['oauth_token'] = $request_token['oauth_token']; 16$_SESSION['oauth_token_secret'] = $request_token['oauth_token_secret']; 17 18//Twitter.com 上の認証画面のURLを取得( この行についてはコメント欄も参照 ) 19$url = $connection->url('oauth/authenticate', array('oauth_token' => $request_token['oauth_token'])); 20 21//Twitter.com の認証画面へリダイレクト 22header( 'location: '. $url );
発生している問題・エラーメッセージ
問題となっているコードは以下のとおりです。
php
1//コールバックURLをここでセット 2$request_token = $connection->oauth("oauth/request_token", array("oauth_callback" => OAUTH_CALLBACK));
このコードを記述し実行するとブラウザ上で下記メッセージが表示されてしまいます。
このページは動作していません
example.com では現在このリクエストを処理できません。
HTTP ERROR 500
インスタンス化自体は問題なく行われているようで、返ってきた「$connection」の中身をvar_dumpで確認出来ました。
object(Abraham\TwitterOAuth\TwitterOAuth)#2 (15) {
["response":"Abraham\TwitterOAuth\TwitterOAuth":private]=> object(Abraham\TwitterOAuth\Response)#3 (5)
{
["apiPath":"Abraham\TwitterOAuth\Response":private]=> NULL
["httpCode":"Abraham\TwitterOAuth\Response":private]=> int(0)
["headers":"Abraham\TwitterOAuth\Response":private]=> array(0) { }
["body":"Abraham\TwitterOAuth\Response":private]=> array(0) { }
["xHeaders":"Abraham\TwitterOAuth\Response":private]=> array(0) { }
}
["bearer":"Abraham\TwitterOAuth\TwitterOAuth":private]=> NULL
["consumer":"Abraham\TwitterOAuth\TwitterOAuth":private]=> object(Abraham\TwitterOAuth\Consumer)#5 (3)
{
["key"]=> string(xx) "XXXXXXXXXXXXXXXXXXX"
["secret"]=> string(xx) "XXXXXXXXXXXXXXXXXXX"
["callbackUrl"]=> NULL
}
["token":"Abraham\TwitterOAuth\TwitterOAuth":private]=> NULL
["signatureMethod":"Abraham\TwitterOAuth\TwitterOAuth":private]=> object(Abraham\TwitterOAuth\HmacSha1)#4 (0) { }
["attempts":"Abraham\TwitterOAuth\TwitterOAuth":private]=> int(0)
["timeout":protected]=> int(5)
["connectionTimeout":protected]=> int(5)
["maxRetries":protected]=> int(0)
["retriesDelay":protected]=> int(1)
["decodeJsonAsArray":protected]=> bool(false)
["userAgent":protected]=> string(40) "TwitterOAuth (+https://twitteroauth.com)"
["proxy":protected]=> array(0) { }
["gzipEncoding":protected]=> bool(true)
["chunkSize":protected]=> int(250000)
}
試したこと
TwitterOAuthをGithubから再取得し、やり直し。
oauth関数付近を確認するものの、特に不具合があるようには見えませんでした。
補足情報(バージョンなど)
php 7.2.9
cURL enabled