【问题标题】:How do I grant my app permissions on pages or groups I created?如何在我创建的页面或组上授予我的应用程序权限?
【发布时间】:2012-09-20 22:36:28
【问题描述】:

我有一个应用,我可以用它写到用户的墙上,在他们登录时请求了 publish_stream 权限。

我还创建了一个页面和一个组,并希望我的应用能够写入这些内容。 (具体来说,我希望我的后端服务器定期发布一些更新,而无需用户参与。)执行此操作的能力似乎暗示了这里 https://developers.facebook.com/docs/reference/api/page/ 和这里的 /feed 部分的描述https://developers.facebook.com/docs/reference/api/group/ 。但是,我似乎找不到授权应用程序写入这些页面的方法。那些文档说如果你有 publish_streams 和 manage_pages 就可以做到。好的,但是如何将这些授予我的应用程序?

在用户案例中,您在用户通过 OAuth 流程登录时请求这些权限。但是,页面和组从不登录,因此他们无法授予应用权限。我查看了组和页面的设置页面,找不到任何可以让我添加应用程序的内容。那么如何为应用授予在群组和页面上发帖所需的权限?

【问题讨论】:

    标签: facebook authentication facebook-group


    【解决方案1】:

    找到了!

    http://developers.facebook.com/docs/reference/api/application/ http://developers.facebook.com/docs/howtos/login/login-as-page/

    "应用程序页面访问令牌

    要作为应用程序页面而不是当前用户执行以下操作,您必须使用应用程序的页面访问令牌,而不是通常用于修改 Graph API 对象的用户访问令牌或应用程序访问令牌。可以通过向具有 manage_pages 权限的 /USER_ID/accounts 发出 HTTP GET 来检索此访问令牌。这将返回用户具有管理权限的页面列表(包括应用程序配置文件页面),以及每个页面的 access_token。

    注意:配置为 Native/Desktop 应用程序的应用程序将无法进行需要应用程序 access_token 的 API 调用。”

    所以:

    我去了http://developers.facebook.com/tools/explorer/,和我一样,创建了一个具有“manage_pages”权限的访问令牌。

    然后我去了https://graph.facebook.com/$myname/accounts?access_token=$accesstoken

    它给了我一个列表页面和我允许的应用程序。我从相关页面复制了 access_token,并将其粘贴到我的代码中,以便服务器端创建事件代码始终使用该访问令牌。

    它成功了!

    【讨论】:

    • 不,这行不通。页面令牌在 2 小时后超时。 developers.facebook.com/docs/howtos/login/login-as-page
    • 是的,我得到了与 Ben Curthoys 相同的结果 - 几个小时后它停止工作。
    • 你是怎么解决这个@BenCurthoys的?
    • 介于:“我放弃并找到了解决问题的另一种方法”和“Facebook 明确表示完全不可能做我想做的事,因此尝试没有意义”之间。我想要这个是为了通过 API 为场地页面创建一个事件,而这不再是一个选项:developers.facebook.com/docs/graph-api/reference/v2.0/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多