Facebook PHP SDK验证对于一些粉丝来说返回“不是风扇”

时间:2012-02-20 23:33:03

标签: php facebook sdk facebook-page

我们正在努力解决让我疯狂的问题。

使用此代码......

$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%的用户看到“非风扇”,他们实际上是我们页面的粉丝。

我不能为我的生活找出问题所在,而且我的想法已经不多了。

任何人都知道是什么导致了这个问题,更重要的是我们可以做些什么来解决它?

谢谢。

更新2/25/12 向Facebook报告了这个错误,他们将错误状态更改为“Triaged”,将优先级更改为“Low”,但他们还没有解决方案并仍在调查中。没有其他人遇到这个问题?

1 个答案:

答案 0 :(得分:1)

这不是Facebook的错误,如果用户的页面设置为低于每个人的隐私,则必须要求用户提供user_likes扩展权限。

因此,这些8%的用户在他们的Facebook个人资料中拥有更多隐私,他们的喜欢不公开。对于所有其他用户,您甚至不需要在api请求中使用有效的access_token。