无法在PHP SDK中获取Facebook好友
我想使用php SDK获得facebook好友。我不能使用最新的PHP SDK,因为它使用名称空间,并且我的应用程序不支持名称空间。我从用户处获得以下权限无法在PHP SDK中获取Facebook好友,php,facebook,facebook-graph-api,Php,Facebook,Facebook Graph Api,我想使用php SDK获得facebook好友。我不能使用最新的PHP SDK,因为它使用名称空间,并且我的应用程序不支持名称空间。我从用户处获得以下权限 email,user_birthday,user_status,publish_stream,offline_access,user_friends 执行代码时,会显示以下Facebook誓言对话 您可以在图像中看到,它不显示用户朋友权限 当我想使用PHP SDK获得用户的朋友时,请使用以下代码: require_once(APP
email,user_birthday,user_status,publish_stream,offline_access,user_friends
执行代码时,会显示以下Facebook誓言对话
您可以在图像中看到,它不显示用户朋友权限
当我想使用PHP SDK获得用户的朋友时,请使用以下代码:
require_once(APPLICATION_PATH_LIB . "/Facebook/facebook.php");
$facebook = new Facebook(array('appId' => $appId, 'secret' => $appSecret));
$token_url = "https://graph.facebook.com/oauth/access_token?" .
"client_id=" . $appId .
"&client_secret=" . $appSecret .
"&grant_type=client_credentials";
$app_token = file_get_contents($token_url);
$app_token = explode("=", $app_token);
$app_token = $app_token[1];
$user = $facebook->getUser();
if ($user) {
$user_profile = $facebook->api('/me', array('access_token' => $app_token));
//echo '<pre>';var_dump($user_profile);die;
$friends = $facebook->api('/me/friends', array('access_token' => $app_token));
echo '<pre>';print_r($friends);
}
实际上,他们最近才禁用了该功能-- 你现在只能得到同样使用你的应用程序的facebook好友列表 看到这个了吗 (在“权限”下的第二点) 对于这一点似乎存在一些分歧,但根据@drmavelous的说法,如果您提交申请进行审查,并通过应用程序下的“状态和审查”部分申请该权限,您可以获得用户的完整好友列表。
但是,这个过程可能需要一些时间,而且您甚至可能没有被授予权限--如果您想获得朋友的完整列表,您需要。请注意,这仅适用于facebook游戏。首先删除发布流、脱机访问。他们已经不存在了。屏幕截图上显示了好友列表。并且错误表示您必须使用用户访问令牌。听起来你在使用应用程序访问令牌,那么我应该使用什么访问令牌?@WizKid我该如何获得它?阅读文档。阅读文档,但无法理解添加内容:为了获得对好友列表的原始访问权限,你必须从Facebook请求访问权限(谁将彻底审查你的应用程序)所以我不能得到用户的所有朋友?是的,这是正确的。你现在只能获得正在使用你的应用程序的朋友列表(没有从Facebook本身请求对你的应用程序的特殊权限)哦,那么我错了-我会相应地编辑我的答案-即使有Facebook的许可,无法再使用/me/friends端点获取完整列表。但这不应被滥用用于任何其他目的。
OAuthException: An active access token must be used to query information about the current user.