0

这是可以制作的最简单的应用程序:

<?php
include_once "inc/fb/facebook.php";
$facebook = new Facebook(array(
    'appId'     => 'xxx',
    'secret'    => 'yyy'
));
$user = $facebook->getUser();
var_dump( $facebook->api("/me/likes/") );
?>`

作为回报,我应该得到一个用户已经喜欢的页面数组。问题是,它对某些用户不起作用。不知何故,在一个过程中,我发现了这个错误:

Fatal error: Uncaught OAuthException: An active access token must be used to query information about the current user. thrown in (...)/fb/base_facebook.php on line 1039

我试图通过以下方式强制获取令牌:

$access_token = $facebook->getAccessToken();

它为每个用户获取令牌,但仍然没有关于用户喜欢什么的表格。

任何帮助,将不胜感激。

4

1 回答 1

0

问题很简单:

$loginUrl = $facebook->getLoginUrl(array(
'scope'         => 'publish_stream,user_about_me',
'redirect_uri'  => $mySettings->app_url,
));
echo "<script> top.location.href='" . $loginUrl . "'</script>"; 

我忘记了范围内的 user_likes 权限。但对我来说奇怪的是 - 为什么它对大多数用户都有效?

于 2012-08-08T08:02:31.537 回答