我试图在 Facebook 中获取有关用户的数据,这些数据只有在应用程序经过身份验证时才能获取(例如 /likes)。
但是,尽管用户已经验证了 Facebook 应用程序(以及适用的特定权限),但我似乎无法获取这些数据。我只能从公共环境中获取数据。
我假设我一定错过了某种身份验证步骤,但我不知道怎么做。当我调用 时$fb->getAccessToken()
,它返回一个字符串值,因此它似乎确实获得了用于发出请求的访问令牌。我看到了一些强制用户单击登录 URL 进行身份验证的解决方案,但是如果他们之前已经对 FB 对话框进行了身份验证(通过 Javascript),那还没有完成吗?除此之外,我需要脚本在没有用户输入的情况下运行。
当前代码:
$fbConfig = array(
'appId' => 'xx',
'secret' => 'xx',
);
//get facebook configuration parameters defined in admin backend
$fb = new facebook($fbConfig);
$access_token = $fb->getAccessToken();
$fbUid = '123456789'; // Known Facebook User Id
$likes = $fb->api('/' . $fbUid . '/likes&access_token=' . $access_token);
var_dump($likes);
// Result is always: array(0) { }