【问题标题】:retrieve Profile ID for Facebook Page Owner/Admin检索 Facebook 页面所有者/管理员的个人资料 ID
【发布时间】:2011-12-12 01:57:59
【问题描述】:

在以前版本的 PHP SDK 中,应用程序能够获取拥有该应用程序安装页面的用户的配置文件 ID。

$facebook->get_profile_user()

这在没有最终用户授权访问 Facebook 应用程序的情况下是可能的。

但是我在新的 JS 或 Graph API 中找不到类似的东西。我能找到的最接近的东西是https://graph.facebook.com/<page_id>/admins,但似乎这个调用要么不起作用,要么需要额外的权限:

Access Token:AAADF5PRI7BkBAKSz9Wqfbkuib6JH7WkZCQDZBgLNO10s1ZAMKF7BO7Y3YCVqkYNuCJ9QroWHYYn8n5wC8diPuBDPGsNUS5tDnZAZA6rFSx28VtpvVhUlY
Graph API: /210093142392039/admins
$this->facebook->api('/291231207559006/admins')

( ! ) Fatal error: Uncaught OAuthException: (#210) Subject must be a page. thrown in /html/classes/facebook/base_facebook.php on line 1033

这个功能消失了吗?我们使用 Profile ID 作为数据源中的键,因此最好保留相同的键,否则我们可以开始存储 page-id,但是用户将不得不重新初始化应用程序。

【问题讨论】:

  • 似乎无论我尝试什么,我都会得到与您相同的响应,即使是我的页面也是如此。它在文档上说你可以在这里检查某个用户 ID 是否是管理员:developers.facebook.com/docs/reference/api/page/#admins 但仅此而已......令人困惑

标签: facebook facebook-graph-api


【解决方案1】:

2011 年 9 月 22 日之后,需要 manage_pages 权限才能执行此操作。 您必须请求 manage_pages 权限,获取页面 access_token,然后使用页面 access_token 进行管理员请求。

请参阅http://developers.facebook.com/docs/reference/api/permissions/ 以获取更新的权限。

【讨论】:

    【解决方案2】:

    好吧,实际上我前段时间遇到了同样的问题,并找到了解决方案。我正在做的是传递用户访问令牌而不是页面访问令牌。我建议你应该尝试类似的东西

    $pageIds=$facebook->api('/me/accounts');
    $pageAccessToken=$pageIds["data"][1]["access_token"]; //get the access token for page "[1]" over here  
    

    然后尝试

    facebook->api('/<page id>/admins', 'get' , array("access_token" => $pageAccessToken));
    

    【讨论】:

    • 由于您要跟踪 /me/accounts,用户是否仍需要授予应用访问权限才能使其正常工作?我收到“需要用户的活动访问令牌”异常..
    • 没错,你需要一个“manage_pages”权限。现在它给出了一个“需要用户的活动访问令牌”例外,我建议你阅读这篇文章http://stackoverflow.com/questions/2687770/do-facebook-oauth-2-0-access-tokens-expire。不确定,但我希望它会有所帮助。
    • 感谢您的信息,我认为这在这方面不再是一个可解决的问题。我的解决方案是从 SignedRequest 中获取 PageID 并将其用作键,如果需要 AdminId 在注册时将两者关联起来,而不是稍后。
    • 我用上面的代码检查了graph api explorer,并且能够获取页面的管理员或所有者。所以它肯定有效。访问令牌一定有问题......我只是在猜测。嘿,为什么不在图形 api 浏览器本身上尝试一下,并尝试找出是否有问题。
    猜你喜欢
    • 2017-10-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多