我只得到 Facebook 用户的基本信息,但我需要更多
I only get basic info of Facebook user, but I need more
我这样称呼login-callback.php
:
$permissions = ['email', 'user_likes', 'user_hometown'];
$helper = $fb->getRedirectLoginHelper();
$loginUrl = $helper->getLoginUrl('http://localhost:1234/fbtest/login-callback.php', $permissions);
echo '<a href="' . $loginUrl . '">Log in with Facebook!</a>';
这是我在 login-callback.php
中的登录操作:
if (isset($accessToken)) {
// Logged in!
$_SESSION['facebook_access_token'] = (string) $accessToken;
$response = $fb->get('/me');
$userNode = $response->getGraphUser();
print_r($userNode);
echo 'data: ' . $userNode['name'];
echo '<br>';
}
输出如下:
Facebook\GraphNodes\GraphUser Object ( [items:protected] => Array ( [name] => xxxNAMExxx [id] => XXXXNUMBERSXXXXX ) )
和 data: xxxNAMExxx
(我明显隐藏了我的ID和真实姓名)
问题是:为什么我不能在我的 $userNode
数组中得到像 email
或 user_hometown
这样的东西,即使我指定了$permissions
(ref) 中的那些?我可以得到 name
因为它是集合,但是除了这个和 id
,没有别的了...
我是不是漏掉了什么?
您在 API 调用中缺少声明字段:
$response = $fb->get('/me?fields=name,email,likes,hometown');
更多信息:https://developers.facebook.com/docs/apps/changelog#v2_4
我这样称呼login-callback.php
:
$permissions = ['email', 'user_likes', 'user_hometown'];
$helper = $fb->getRedirectLoginHelper();
$loginUrl = $helper->getLoginUrl('http://localhost:1234/fbtest/login-callback.php', $permissions);
echo '<a href="' . $loginUrl . '">Log in with Facebook!</a>';
这是我在 login-callback.php
中的登录操作:
if (isset($accessToken)) {
// Logged in!
$_SESSION['facebook_access_token'] = (string) $accessToken;
$response = $fb->get('/me');
$userNode = $response->getGraphUser();
print_r($userNode);
echo 'data: ' . $userNode['name'];
echo '<br>';
}
输出如下:
Facebook\GraphNodes\GraphUser Object ( [items:protected] => Array ( [name] => xxxNAMExxx [id] => XXXXNUMBERSXXXXX ) )
和 data: xxxNAMExxx
(我明显隐藏了我的ID和真实姓名)
问题是:为什么我不能在我的 $userNode
数组中得到像 email
或 user_hometown
这样的东西,即使我指定了$permissions
(ref) 中的那些?我可以得到 name
因为它是集合,但是除了这个和 id
,没有别的了...
我是不是漏掉了什么?
您在 API 调用中缺少声明字段:
$response = $fb->get('/me?fields=name,email,likes,hometown');
更多信息:https://developers.facebook.com/docs/apps/changelog#v2_4