我已经读过有关php的新facebook sdk, 它谈到你不能再检索你的朋友信息了,它说邀请朋友等等。 但实际上我使用的应用程序获得了一些随机的朋友名字,并且不是游戏应用程序, 我需要完全相同的随机朋友名字, 问候。
答案 0 :(得分:1)
有一个新的API端点可用于获取朋友的名字。您可以使用新的/me/taggable_friends
朋友API调用:
/v2.0/me/taggable_friends
响应将包括朋友姓名,个人资料照片和可用于标记API调用的加密ID。 See the documentation here
使用JS API,您可以执行以下操作:
FB.login(function(){
FB.api('/me/taggable_friends', 'get', function( response ) {
console.log( response );
} );
} );
使用PHP:
$taggable = (new FacebookRequest( $session, 'GET', '/me/taggable_friends' ))->execute()->getGraphObject()->asArray();
echo '<pre>' . print_r( $taggable, 1 ) . '</pre>';
您必须审核此权限才能将其与最终用户一起使用。如果你不这样做,你会看到如下消息:
(#10)代表非管理员的人使用taggable_friends, 您的应用的开发人员和测试人员必须使用此端点 由Facebook审核并批准。提交此功能以供审核 请阅读我们关于可审查功能的文档: https://developers.facebook.com/docs/apps/review
修改强>
要为朋友获取更大的个人资料图片,您需要使用fields
参数并请求特定类型或尺寸的图片,例如:
/me/taggable_friends?fields=id,name,picture.type(large)
OR
/me/taggable_friends?fields=id,name,picture.width(500)
使用PHP:
$taggable = (new FacebookRequest( $session, 'GET', '/me/taggable_friends', [ 'fields' => 'id,name,picture.type(large)' ] ))->execute()->getGraphObject()->asArray();
echo '<pre>' . print_r( $taggable, 1 ) . '</pre>';
答案 1 :(得分:0)
从v2.0开始;只有使用请求的应用的朋友才能使用{user-id}/friends
获取。
使用与v1.0相同的API能够获取所有朋友列表。但此版本将于2015年4月30日之后删除。Reference