【问题标题】:Unable to post to FB page using Graph API 2.3无法使用 Graph API 2.3 发布到 FB 页面
【发布时间】:2015-12-02 08:59:16
【问题描述】:

我花了很长时间试图让它发挥作用,并花了同样长的时间搜索论坛(包括这个)来寻找答案。不幸的是,我似乎找不到任何解决这个问题的方法.....

我创建了一个 FB 应用程序,该应用程序用于发布(作为页面)到 FB 中的页面。

通过 dedigging,我将整个 URL 设为:

https://graph.facebook.com/216065898461057/feed?access_token={access-token}

“访问代码”是页面访问代码,我还在 URL 中包含了“页面 ID”。我引用 FB 文档:

当页面管理员的用户访问令牌在请求中时,例如 POST /v2.3/{page-id}/feed,动作伴随着声音发生 用户,而不是页面。要发布为页面,您现在必须使用 页面访问令牌。

运行代码我从 FB 收到以下错误: “远程服务器返回错误:(403) Forbidden。”

如果我使用 FB Graph Explorer 做同样的事情,我会收到以下错误:

{ “错误”:{ "message": "(#200) 用户未授权应用程序执行此操作", “类型”:“OAuthException”, “代码”:200, "fbtrace_id": "GgRkiy/i6tP" } }

现在,许多帖子都会建议为应用添加必要的权限,但我目前已获得以下批准:

电子邮件、manage_pages、public_profile、publish_actions、publish_pages、 user_friends, user_managed_groups

我的理解是在 v2.3 中你应该只需要 publish_pages。

谁能明白为什么这不起作用!

【问题讨论】:

  • 在调试器中调试你的页面令牌:developers.facebook.com/tools/debug
  • 你需要的是 manage_pages 和 publish_pages
  • 我已经拥有“manage_pages”和“publish_pages”——请参阅我的帖子中的完整列表。
  • 如果我使用调试“页面令牌”,范围列表是:电子邮件、manage_pages、publish_actions、public_profile - 所以这没有“publish_pages”。这可能是问题吗?该应用确实有“publish_pages”
  • 嗯,这就是问题所在。如果没有 publish_pages,您将无法发布。如果它没有出现在调试器中,你没有授权它。看我的回答。

标签: facebook facebook-graph-api facebook-permissions facebook-graph-api-v2.3


【解决方案1】:

“用户尚未授权应用程序执行此操作”通常意味着一件事:您的访问令牌缺少正确的权限。在这种情况下,它将是publish_pages。您绝对应该拥有manage_pages,因为您需要它来获取页面令牌。这是您“作为页面”发布到页面所需的仅有的两个权限。

确保在获取页面令牌之前使用publish_pages 授权用户。

【讨论】:

  • 太棒了。谢谢...它现在发布没有错误!虽然它发布到我的用户墙而不是组......但看起来我可能有错误的访问代码
  • 组?我以为我们在这里谈论的是一个页面,而不是一个组?无论如何,正确的端点是带有页面令牌的 /page-id/feed。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-04-22
  • 1970-01-01
  • 2014-08-24
  • 1970-01-01
  • 2012-10-12
  • 2012-06-18
相关资源
最近更新 更多