首页 文章

从Facebook应用程序发布到(粉丝)页面 - 应用程序没有足够的权限

提问于
浏览
0

我有一个facebook应用程序和一个facebook(粉丝)页面 . 我想发布到页面,作为应用程序验证(如果可能),从作为cron作业定期运行的php脚本 .

我正在使用官方facebook php sdk .

我想用 $facebook->api($pageId."/feed", 'POST', $post); 发布到页面,其中$ post包含所需的 messagelink 键,并且还应包含 access_token .

为了获取访问令牌,我尝试使用 $facebook->getApplicationAccessToken() ,并向 https://graph.facebook.com/oauth/access_token 发出curl请求(相同的结果) .

我得到的回应是: OAuthException: (#200): The user hasn't authorized the application to perform this action

我能够发布到页面,但是来自 https://graph.facebook.com/me/accounts 的access_token,这要求我提供用户's access token in the first place. The user'并且他的页面的令牌似乎到期,最多在60天之后,所以这个解决方案并不好 .

我尝试授予像这里解释的权限Authorizing a Facebook Fan Page for Status Updates,但我仍然从之前得到错误 .

Any solution on how to post to a facebook page which does not involve user login will be welcome!

2 回答

  • 3

    您可以使用Graph API Explorer通过应用程序获取所需的access_token以便发布到Facebook页面 . 在资源管理器中:

    • 选择代表您要做的事情的应用程序(帖子,等等) .

    • 在网址字段中输入网页的网址:https://graph.facebook.com/page' .

    • 点击“获取访问令牌以获取它 .

    • 你会得到一个对话框;选择授予此应用程序的权限 . 至少publish_stream,offline_access和manage_pages(用于发布到页面墙帖子)

    • 您将获得一个可以与您的应用一起使用的新访问令牌 . 发布到您的页面 .

  • 1

    无法使用Application access_token在页面上发布,并且无需登录用户(至少一次获取 access_token ,稍后可以extended)并请求适当的权限 .

    要以用户身份发布到Page,您需要 publish_stream 用户授予的权限 .

    要将页面作为页面发布,您需要 publish_streammanage_pages 权限由User和Page access_token授予,这些权限可以从 accounts user连接中检索 .

相关问题