2016-05-18 10 views
0

Ich habe ein Formular für lead gen, das nur die Benutzerinformationen (wie Name, Geschlecht, E-Mail) erhält, die mit Facebook ausgefüllt werden können. Aber das Problem besteht darin, das Formular mit der FB-Umleitung zur Indexseite zu füllen. Wie kann ich die Rückgabeseite auf eine andere Ansicht oder Aktion einstellen?Yii2 AutClient Set Rückseite für Facebook client

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 config:

'auth' => ['class' => yii\authclient\AuthAction::className(),'successCallback' => [$this, 'onAuthSuccess']]

+0

Was sind Ihre Auth-Aktion konfiguriert? –

+0

@KandarpPatel aktualisierte Frage mit auth Aktion config – Bledson

+0

hinzufügen 'successUrl' => 'Ihre URL' zu konfigurieren –

Antwort

1

hinzufügen successURL in Auth Aktion Config

'successUrl'=>'url' 

es ist eine öffentliche Eigenschaft, die Sie seinen Wert in Ihrer Funktion außer Kraft setzen können auch

$this->action->successUrl = "url-with-data"; 

Hinweis: Dies ist nur für verständliche Zwecke, beste Möglichkeit, dynamische URLs zu generieren wäre mit URL-Manager