事象が違いました。申し訳ございません。修正しました。
タイトル通りです。
以下の記事を参考に、Laravel5.5でTwitter認証の機能を作ったのですが、
php artisan serve
コマンドで建てた環境だと、認証前のセッションに書き込んだoauth_tokenの値と、
返ってきたoauth_tokenは一緒なのですが、
さくらのレンタルサーバだと、違う値が取得されます。
これは何故なのでしょうか?
参考サイト様
https://qiita.com/sofpyon/items/982fe3a9ccebd8702867
該当部分コード(ログイン時)
php
1// TwitterOAuth をインスタンス化 2 $connection = new TwitterOAuth(self::CONSUMER_KEY, self::CONSUMER_SECRET); 3 4 // コールバックURLをここでセット 5 $request_token = $connection->oauth('oauth/request_token', ['oauth_callback' => self::OAUTH_CALLBACK]); 6 7 // セッションにデータを保存しておく 8 Session::put('oauth_token', $request_token['oauth_token']); 9 Session::put('oauth_token_secret', $request_token['oauth_token_secret']); 10 Session::save(); 11 12 // Twitter.com 上の認証画面のURLを取得 13 $url = $connection->url('oauth/authenticate', ['oauth_token' => $request_token['oauth_token']]); 14 15 //Twitter.com の認証画面へリダイレクトURLを返す 16 return $url;
該当部分コード(コールバック時)
php
1// セッションに書き込まれている、アクセストークンを取得 2 $oauth_token = []; 3 $oauth_token['oauth_token'] = Session::get('oauth_token'); // からっぽ 4 $oauth_token['oauth_token_secret'] = Session::get('oauth_token_secret'); // からっぽ 5 6 // トークンが取得できなかた場合 7 if (empty($oauth_token['oauth_token']) || empty($oauth_token['oauth_token_secret'])) { 8 // falseを返す 9 return false; 10 } 11 12 // oauth_tokenとoauth_token_secretをキーにした連想配列が返る 13 return $oauth_token;
これは何故なのでしょうか?
もともと$request->sessionのカタチでやっていたのですが、
https://teratail.com/questions/38215
の記事を参考にして今の形に直しましたがだめでした。
理由が全くわからず困っております。
ご存じの方がいらっしゃいましたら、ご教示いただけますと幸いです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/02/21 17:56