Facebook 当我第一次尝试使用Fb登录时,我得到错误,第二次尝试登录时,我成功登录

Facebook 当我第一次尝试使用Fb登录时,我得到错误,第二次尝试登录时,我成功登录,facebook,cakephp,facebook-login,Facebook,Cakephp,Facebook Login,当我第一次尝试登录时,我在异常中收到错误消息:\ [消息]=>必须使用活动访问令牌来查询有关当前用户的信息 以下是我的代码: Configure::load('facebook'); $appId = Configure::read('Facebook.appId'); $app_secret = Configure::read('Facebook.secret'); $facebook = new Facebook(array( 'appId' => $appId,

当我第一次尝试登录时,我在异常中收到错误消息:\

[消息]=>必须使用活动访问令牌来查询有关当前用户的信息

以下是我的代码:

Configure::load('facebook');
$appId      = Configure::read('Facebook.appId');
$app_secret = Configure::read('Facebook.secret');
$facebook   = new Facebook(array(
    'appId' => $appId, // fb app id (mentioned in facebook.php)
    'secret' => $app_secret, // fb secret key
    'cookie' => true,
    'oauth ' => true
));

//======================================
// to get loggedin user details
//======================================

$user = $facebook->getUser();

//$access_token = $facebook->getAccessToken();
if (!empty($user)) {
    try {
        $user_profile = $facebook->api('/me');
    } catch catch (FacebookApiException $e) {
        pr($e);
    }
}
//=========================== //看法

函数facebook登录(检测时区){
打开窗户https://www.facebook.com/dialog/oauth?client_id=&display=popup&redirect_uri=“+base_url+”/users/facebook_login/scope=email“,”,“width=600,height=400”);
}

您将所有这些代码放在哪里?此行为表明存在cookie问题。您是在登录后刷新页面/重定向,还是在使用Ajax?在任何一种情况下,必须将js sdk中的Facebook cookie设置为
getUser()
,才能找到用户。andre我在controller@costa中编写了上述代码,我正在刷新页面您想使用js sdk提供登录按钮,还是通过php重定向登录?我已经更新了代码。。。请复习
function facebookLogin(detectedTimeZone){

    window.open('https://www.facebook.com/dialog/oauth?client_id=<?php echo $appId; ?>&display=popup&redirect_uri='+base_url+'/users/facebook_login/scope=email','','width=600, height=400');
       }

       <div style="float:left;"><a onclick="facebookLogin(detectedTimeZone);" href="javascript: void(0);" id="fb-auth"><img src="/images/fblogin.png"></a>
                        </div>