【问题标题】:Fatal error for permissions in Facebook APIFacebook API 中权限的致命错误
【发布时间】:2012-12-11 23:27:44
【问题描述】:

我关注了error

Fatal error: Uncaught OAuthException: An active access token must be used to query information about the current user. thrown in /home/.../third_party/base_facebook.php on line 1106

我的功能是,

public function isPhotoPermission()
        {
            $facebook = new Facebook();
            $access_token = $facebook->getAccessToken();
            $permissions = $facebook->api("/me/permissions","GET",array('access_token' => $access_token));
            if( array_key_exists('user_photos', $permissions['data'][0]) ) 
            {
                return 1;
            } 
            else 
            {
                return 0;
            }
        }

1106 行是,

1105:  protected function throwAPIException($result) {
1106:    $e = new FacebookApiException($result);
1107:    switch ($e->getType()) { ....

以下代码发生错误:

$permissions = $facebook->api("/me/permissions","GET",array('access_token' => $access_token));

问题出在哪里?感谢您的提前。

【问题讨论】:

    标签: php facebook facebook-graph-api permissions


    【解决方案1】:

    你确定你没有忘记Facebook()构造函数的参数吗?

    $config = array();
    $config[‘appId’] = 'YOUR_APP_ID';
    $config[‘secret’] = 'YOUR_APP_SECRET';
    $config[‘fileUpload’] = false; // optional
    
    $facebook = new Facebook($config);
    

    https://developers.facebook.com/docs/reference/php/

    或者您是否在代码中的其他位置初始化了您的 $facebook 对象?在这种情况下,您应该:

    • 要么将$facebook 传递给您的isPhotoPermission() 函数以取回它,
    • 或者将$facebook设置为global是否在另一个函数中初始化,
    • 或者如果 $facebook 已在函数外部定义(意味着它已经是 global),则只需删除 $facebook = new Facebook(); 行。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-12-01
      • 1970-01-01
      • 1970-01-01
      • 2023-01-08
      • 2012-07-11
      • 1970-01-01
      • 1970-01-01
      • 2012-07-10
      相关资源
      最近更新 更多