添加身份验证操作并设置回调
- 将按钮
Login as facebook account
添加到你的登录视图:
在 views 文件夹中编辑 site/login.php
,将这些行添加到页面登录的内容中:
<?= yiiuthclient\widgets\AuthChoice::widget([
'baseAuthUrl' => ['site/auth'],
'popupMode' => false,
]) ?>
在上面,我们设置 SiteController
中的 auth
动作将处理 OAuth2 流程。
现在我们创建它。
class SiteController extends Controller
{
public function `actions()`
{
return [
'auth' => [
'class' => 'yii\authclient\AuthAction',
'successCallback' => [$this, 'onAuthSuccess'],
],
];
}
public function onAuthSuccess($client)
{
// do many stuff here, save user info to your app database
}
}
我们使用 yii\authclient\AuthAction
创建 url 并重定向到 facebook 登录页面。
功能 onAuthSuccess
用于获取用户信息,登录到你的应用程序。