作为应用程序自动发布在Facebook页面墙上

实际上,我正在为电子商务网站开发一些遗留的PHP代码,管理员可以在他们的商店Facebook页面上自动共享一些产品。 这不工作了,即使在Facebook API参考之后,我仍然陷入困境。 旧版代码使用应用在墙上发帖

访问权限
为了获得有效的Access令牌,我重定向到:

http://www.facebook.com/dialog/oauth?client_id=$FB_APP_ID&
redirect_uri=$APP_RETURN_URL&
scope=publish_actions,manage_pages

然后,我得到它返回的代码并使用以下参数向https://graph.facebook.com/oauth/access_token请求GET请求:

'client_id' => $FB_APP_ID,
'redirect_uri' => $APP_RETURN_URL,
'client_secret' => $FB_APP_SECRET,
'code' => $code (got from the above redirect)

然后我存储它返回的访问令牌(我没有收到错误消息和一个有效的access_token)

问题是,当我尝试通过POST调用在https://graph.facebook.com/$pageId/feed发布墙时,我收到以下错误消息:

(#283)需要扩展权限:manage_pages

我用于第一次重定向的范围参数不足以获得manage_pages权限?

注意我用我的Facebook用户帐号,他是Facebook页面上的编辑。 也许它有帮助

编辑:这是访问令牌调试的输出:

应用程序ID .....
用户名 ...
用户上次通过API v2.x安装此应用程序
已发布1452163781(21小时前)
到期1457347781(约2个月)
有效值为真
起源网站
范围电子邮件,public_profile

我应该如何请求manage_pages范围?


您需要通过Facebook审查这些权限,然后才能向普通用户(在应用中没有角色的用户)请求这些权限。

这在文档中的多个地方明确提到,详细描述如下:https://developers.facebook.com/docs/facebook-login/permissions/review

另外,从API v2.3开始,您需要将publish_pages权限(而不是publish_actions )作为页面发布。

链接地址: http://www.djcxy.com/p/63229.html

上一篇: Automatically post on Facebook page wall as app

下一篇: Facebook permissions and null data handling