manage_pages已授予,但无法获取帐户信息

时间:2011-09-06 18:51:43

标签: php facebook facebook-graph-api facebook-php-sdk

昨天我开发了一个小脚本(应用程序),我可以将照片上传到粉丝页面的特定相册,同时访问此粉丝页面(已安装的应用程序)作为粉丝。

昨天它有效 - 今天它仍然有效。但后来我只是复制了文件并创建了一个新的应用程序。唯一的区别是,所有文件都放在另一台服务器上。我通过粉丝专页管理员帐户向应用授予了以下权限:manage_pages,publish_stream和offline_access。

现在我只想运行以下代码:

<?php $userAccounts = $facebook->api('/' . _ADMIN_ID . '/accounts');?>

但我总是得到错误消息,需要用户访问令牌。当我删除/帐户时:

<?php $userAccounts = $facebook->api('/' . _ADMIN_ID);?>

然后它没有问题,我得到管理员信息。当我检查我的隐私设置时,它说我已经授予了我上面提到的权限。

以下是我运行的代码,直到出现错误:

<?php
include_once('config.php');
include_once('facebook/facebook.class.php');

$facebook = new Facebook(array(
  'appId' => _APP_ID,
  'secret' => _APP_SECRET,
  'cookie' => true,
  'fileUpload' => true
));
$userAccounts = $facebook->api('/' . _ADMIN_ID . '/accounts'); 
?>

再次说明:此应用拥有manage_pages,publish_stream和offline_access权限,没有'/ accounts'我会收到管理员帐户的所有信息。

任何帮助都会非常好。

提前致谢, Jurik

1 个答案:

答案 0 :(得分:0)

显然,当您致电:$facebook->api('/' . _ADMIN_ID);时,您正在获取有关该用户的公开信息,就像致电:

https://graph.facebook.com/_ADMIN_ID

你说你授予了offline_access?所以在你的电话中使用存储的访问令牌:

$userAccounts = $facebook->api('/' . _ADMIN_ID . '/accounts?access_token=' . $stored_access_token);