仅在Facebook Graph Api中使用AccessToken访问用户数据

时间:2013-08-27 09:28:56

标签: php facebook facebook-graph-api facebook-php-sdk

我正在尝试使用访问令牌访问用户朋友信息。

所以我创建了一个facebook对象。

$facebook = new Facebook(array(
            'appId' => APP_ID,
            'secret' => APP_SECRET,
            ));

然后我将访问令牌设置为该对象。

$facebook->setAccessToken(TOKEN);

然后当我尝试检索用户信息时,它返回0.

$user = $facebook->getUser();

所以下面的代码没有被执行。

if ($user) 
{
    try 
    {
        // Proceed knowing you have a logged in user who's authenticated.
        $user_profile = $facebook->api('/me');
    } 
    catch (FacebookApiException $e) 
    {
        error_log($e);
        $user = null;
    }
}

谁能告诉我我的错误在哪里。

1 个答案:

答案 0 :(得分:2)

您可以使用curl,

例如

        $params = array('access_token' => self::accessToken);
        $url = "https://graph.facebook.com/me/friends";
        $url .= '?' . http_build_query($params);


    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HEADER, false);
    curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET');
    curl_setopt($ch, CURLOPT_USERAGENT ,'');
    $output = curl_exec($ch);
    $info = curl_getinfo($ch);
    curl_close($ch);
   $output = json_decode($output);

这应该会为您提供您使用其访问令牌的人的朋友列表。