Facebook:从访问令牌中提取用户信息

时间:2012-06-12 08:58:46

标签: facebook json facebook-graph-api facebook-access-token

我使用用户的有效访问令牌来识别用户......

用这个:
https://graph.facebook.com/me?fields=id&access_token=VALID_ACCESS_TOKEN

它返回:

{
   "id": "100000004811603"
}
很明显,我只想提取用户的ID ...这是我需要为用户做的一切事情/

有人可以教我如何解析这个吗? 如果没有Data:

,我会看到这种结果,这很奇怪

3 个答案:

答案 0 :(得分:1)

根据您描述问题的方式,我会尝试回答。

$response = // get facebook response as you do
$data = json_decode($response);
$id_that_you_need = $data['id']

也许我让你错了。

答案 1 :(得分:0)

使用此功能

function objectToArray( $object )
{
    if( !is_object( $object ) && !is_array( $object ) )
    {
        return $object;
    }
    if( is_object( $object ) )
    {
        $object = get_object_vars( $object );
    }
    return array_map( 'objectToArray', $object );
}

传递https://graph.facebook.com/me的输出?这个功能。这个函数将返回数组。你可以轻松使用价值。

像这样

$ Array = objectToArray($ Data);

的print_r($阵列);

答案 2 :(得分:0)

$facebook_token = <VALID_ACCESS_TOKEN>;
$user_information = curl_init("https://graph.facebook.com/me?access_token=$facebook_token");
curl_setopt($user_information,CURLOPT_SSL_VERIFYPEER,FALSE);
curl_setopt($user_information,CURLOPT_SSL_VERIFYHOST,FALSE);
curl_setopt($user_information,CURLOPT_RETURNTRANSFER,true);
$reps= curl_exec($user_information);
curl_close($user_information);
echo($reps);`

`