2011-03-12 100 views
1

这与here的情况相同,但现在我需要发布消息到Facebook的墙页面Facebook API:如何发布到页面墙

我尝试以下(其它代码是相同的答案):

$facebook->api('/PAGE-ID/feed', 'post', $attachment) 

,但我得到

(#200)的用户没有授权的错误应用程序执行此操作`。

我认为我的错误access_token该行动,但在哪里/如何得到正确的?

回答

2

有关获取access_tokens和权限的Facebook文档记录在其网站Here上。

如果您想离线发布,您需要获得永久 access_token的权限,以发布到用户状态页面。您必须拥有永久(或offline_access)令牌才能执行此操作,而不必担心令牌过期。

当请求您的access_token可以添加额外的权限属性所发出GET请求,在关键你指定你想的更多的权限。

编辑: 获取具有范围权限的令牌的过程是,在第二个示例的“授权”一节下。它将有一个“范围”示例请求额外的权限。这些权限曾经被记录在OAuth流中,但他们似乎已经感动了,对不起。

+0

我必须自动终止,无需手动访问Facebook页面做到这一点,脚本必须令牌自动获得访问权限。 – Poru 2011-03-12 20:46:49

+0

@Poru,这是不可能的AFAIK。所有的应用程序必须通过画布来托管,或专门启动浏览器,让用户登录,然后提供一个令牌回来。这一切都覆盖在api文档上。一旦令牌被授予,您可以从其他进程重用它。 – GrayWizardx 2011-03-12 21:49:07

2

该错误消息听起来更像是你有一个访问令牌,但权限是错误的。阅读上extended permissions

你可能需要问“publish_stream”当你的用户登录/让你的“应用程序”的权限。