我有一个关于潜在客户的表单,它只能获取可以用Facebook填写的用户信息(如姓名,性别,电子邮件)。但问题是,选择用FB重定向填充表单到索引页面。如何将返回页面设置为其他视图或操作?
public function onAuthSuccess($cliente)
{
// TODO: fb login e retornar dados do perfil para o form
$fb = new Facebook([
'app_id' => MYAPPID,
'app_secret' => MYAPPSECRET
]);
try {
$token = $cliente->getAccessToken()->getToken();
// Returns a `Facebook\FacebookResponse` object
$usuario = $fb->get('/me?fields=email,name,gender,age_range',
$token)->getDecodedBody();
} catch(Exception $e) {
echo 'Error: ' . $e->getMessage();
exit;
}
return ; // actually doesn't matter, it always end redirecting to site/index
}
验证配置:
'auth' => ['class' => yii\authclient\AuthAction::className(),'successCallback' => [$this, 'onAuthSuccess']]
答案 0 :(得分:1)
在Auth action config
中添加successUrl'successUrl'=>'url'
它是一个公共属性,你可以在你的函数中覆盖它的值
$this->action->successUrl = "url-with-data";
注意:这仅用于理解目的,生成动态网址的最佳方式是使用urlmanager