2013-04-04 164 views

回答

0

首先確保您的用戶被授予訪問您的應用的權限。然後撥打電話通過API來獲取個人信息(/ ME)=>$this->Connect->user()

就個人而言,我用這個

public function beforeFilter(){ 
    if($this->Connect->FB->getUser() != 0){ 
     $this->set('facebookUser', $this->Connect->user()); 
} 

起爆ConnectComponent將填充(或不)的驗證會話。如果沒有找到id,將用戶重定向到登錄對話框。

0

從beforefilter調用此方法。並將收到的發佈數據保存在某個變量中,如fb_data。

protected function _valdiateFbRequest() { 

     if (!isset($this->request->data['signed_request'])) { 
     // not a valid request from fb 
     // throw exception or handle however you want 
     return; 
    } 
    $this->signedRequest = $this->request->data['signed_request']; 
    $this->fb_data=$this->Connect->registrationData(); //save fb data 

    unset($this->request->data['signed_request']); 

    if (empty($this->request->data)) { 
     $this->Security->csrfCheck = false; 
    } 
    // validate the request 
}