我们正与一个让我发疯的问题作斗争。
正在使用此代码。。。
$facebook = new Facebook($config);
$uid = $facebook->getUser();
if ($uid) {
try {
$user_profile = $facebook->api('/me');
} catch (FacebookApiException $e) {
error_log($e);
$uid = null;
}
}
if(!$uid) {
$params = array(
'scope' => 'email',
'redirect_uri' => 'https://www.mysite.com/'
);
$loginUrl = $facebook->getLoginUrl($params);
header("Location: $loginUrl");
}
$email = $facebook->api('/me?fields=email');
$email = $email['email'];
$verifyLike = $facebook->api('/me/likes/page_id');
if($verifyLike['data']) {
echo "FAN";
} else {
echo "NOT A FAN";
}
我们有大约8%的用户看到"不是粉丝",他们实际上是我们页面的粉丝。
我一辈子都无法解决这个问题,而且我已经没有什么想法了。
有人知道是什么导致了这个问题,更重要的是,我们能做些什么来解决它吗?
谢谢。
更新日期:2012年2月25日向Facebook报告了这个错误,他们将错误状态更改为"Triaged",优先级更改为"Low",但他们还没有解决方案,仍在调查中。没有其他人遇到这个问题?
这不是facebook的错误,如果用户的页面设置为低于所有人的隐私,则必须向用户请求user_likes扩展权限。
因此,这8%的用户在他们的facebook个人资料上有更多的隐私,他们的点赞是不公开的。对于所有其他用户,您甚至不需要在api请求中使用有效的access_token。