【问题标题】:Facebook php sdk api('/me'), doesnt always respondFacebook php sdk api('/me'),并不总是响应
【发布时间】:2013-01-01 03:00:42
【问题描述】:

目前我正在尝试获取已登录用户的信息。但是我遇到了一个问题,我在 Yii 的一个函数中构建了它,这确实有效。但有时不会。

当我转到该功能时,它会执行以下操作:

$accesToken = Yii::app()->facebook->getAccessToken();
$results = Yii::app()->facebook->api('/me');
print_r($results);

当我启动它时,我得到了所有信息,但是当我刷新同一页面时,它给出了以下错误:

Error 500
An active access token must be used to query information about the current user.

最奇怪的是,当我等待几秒钟并再次刷新时,它会为我提供用户的信息,就像第一次加载函数时一样。

所以我真的被困在如何解决这个问题上,因为我真的不知道为什么它一次有效,而不是第二次。

整个函数是:

public function actionLogin() {
    $facebookID = Yii::app()->facebook->getUser();

    if($facebookID == 0) {

            echo 'No Facebook id.';

    } else {
        $record = Users::model()->findByAttributes(array('FB_id'=>$facebookID));
        if($record===null) {

            echo 'Got facebookID but not in database!';
            echo $facebookID;
        } else {

            $accesToken = Yii::app()->facebook->getAccessToken();
            $results = Yii::app()->facebook->api('/me');
            print_r($results);
            echo '<br><br>';
            echo $accesToken;
            //echo 'Got facebookID and is in database!';
        }
    }
    /*
    echo $facebookID;
    echo '<br>';
    echo $accesToken;
    */
}

【问题讨论】:

  • 您使用的是哪个 sdk 版本?最新的是 php sdk 3.2.2
  • 这里真正的问题是,您是否在检查访问令牌提供的数据?或者它甚至是一个有效的访问令牌?

标签: facebook yii facebook-php-sdk


【解决方案1】:

这对我有用:The Access Token is Valid but We get OAuthException: An active access token error

public function __construct() {
    $this->facebook = new Facebook(array(
        'appId'  => $this->appId,
        'secret' => $this->appSecret,
    ));
    $this->facebook->setAccessToken(Yii::app()->session['access_token']);
}

【讨论】:

    【解决方案2】:

    试试$results = Yii::app()-&gt;facebook-&gt;api('/me?access_token=' . $accesToken);

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-11-26
      • 2023-03-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多