我正在用 Laravel 和 Oneauth 捆绑包来通过 twitter 登录。
我一直在关注 Michael Calkin 的教程:http: //youtu.be/xlUFiZhwFiE
- 我已经通过工匠安装了 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());
那里有一些冗余......不确定这是否重要
任何建议表示赞赏!德克萨斯州,蒂姆