我使用新的facebook php sdk v4,我想检索朋友的完整列表代码:
try {
$user_friends = (new FacebookRequest(
$session, 'GET', '/me/friends'
))->execute()->getGraphObject(GraphUser::className());
echo '<pre>';
print_r($user_friends);
} catch(FacebookRequestException $e) {
echo "Exception occured, code: " . $e->getCode();
echo " with message: " . $e->getMessage();
}
但是结果是:
FacebookGraphUser Object
(
[backingData:protected] => Array
(
)
)
登录url参数:
$loginUrl = $helper->getLoginUrl(array( 'publish_actions', 'user_friends', 'public_profile' ) );
是否禁用此功能?还有别的方法可以得到朋友列表吗?
提前感谢
您将只获得那些使用相同Facebook应用程序的朋友。
FacebookFacebookSession::setDefaultApplication('id','secret');
$session = new FacebookFacebookSession('access_token');
// Check user's token is valid or not.
$me = (new FacebookFacebookRequest(
$session, 'GET', '/me/friends'
))->execute()->getGraphObject(FacebookGraphUser::className());
$result = $me->asArray();
// Get user's friends
$friends = $result['data'];
// Converting classes to array
foreach ($friends as $key => $value) {
$friends[$key] = (array)$value;
}
看看我的答案在这里使用facebook API检索完整的朋友列表
边缘/{user-id}/friends
只返回与请求用户使用相同应用程序的朋友:https://developers.facebook.com/docs/graph-api/reference/v2.0/user/friends/
请确保您在下次发布问题之前使用SO的搜索功能,因为已经有很多关于同一主题的问题。