Laravel と Twitter 経由でログインするための Oneauth バンドルに頭を悩ませています。
私は Michael Calkin のチュートリアルに従っています: http://youtu.be/xlUFiZhwFiE
- artisan経由でOneAuthをインストールしました
- 移行を実行する
- ツイッターアプリを作りました
- id、social_uid、social_provider、username、email で User テーブルを作成しました
- コントローラー connect.php を作成しました:
class Connect_Controller extends OneAuth\Auth\Controller {}
- 接続するためにルーティング:
Route::controller( 'connect' );
- ビデオの関数(以下)をコピーしました。これは私には意味があります
- ブラウザのキャッシュをクリアしました
したがって、テストでは:
- 私はリンクを訪問しました
mysite.dev/connect/session/twitter
- ボタンをクリックすると、Twitter が認証を要求しました (テスト用に新しいアカウントを作成しました)。
- 公認ツイッター
- に戻されました
users/social_register
- 新しいユーザーがテーブルに追加されました
oneauth_client
- 以下のスニペットは、返されたユーザー データを表示するだけのはずですが、実際には、URL は /users/social_register を読み取りますが、ビュー users.index が表示されます!
コントローラー: users.php
...
public function get_social_register()
{
$user_data = Session::get( 'oneauth' );
dd( $user_data );
}
(完全なコードはこちら: https://gist.github.com/ptim/a29bb86b3fb7455c19ba )
ああ、そして私のルート:
Route::controller( 'connect' );
Route::get('users/(:any)', 'users@index' );
Route::controller(Controller::detect());
そこにいくつかの冗長性があります...それが重要かどうかはわかりません
どんな提案でも大歓迎です!Tx、ティム