将内容发布为页面

时间:2016-03-01 01:43:16

标签: python facebook facebook-graph-api facebook-sdk-4.0

我正在尝试将消息发布到商家页面的墙上。我遵循以下steps,一切正常,但我不会以管理员身份在商务墙上发布消息。

graph = facebook.GraphAPI(access_token='xxx')

如果我使用graph.put_wall_post(message='test'),我会在个人信息墙上发布文字。

使用商家页面的个人资料ID,graph.put_wall_post(message='test', profile_id='5537xx')我发布了Me > business page

之类的内容

如果我尝试使用商家页面创建应用,则会收到以下错误:

Users not logged into their personal account cannot access developers.facebook.com

如何将邮件作为文本帖子直接发布到我的商家页面而不会出错?

1 个答案:

答案 0 :(得分:1)

您应该为页面获得access-token。您可能正在为您的个人帐户获取访问令牌。

如图谱API文档中所述, here here

  

使用Pages API,使用您应用的用户可以将其发布到Facebook   页面(...)
  在您的应用程序可以调用读取,更新或发布到页面之前,您需要获取页面访问令牌。使用此令牌,您可以查看页面设置,更新页面信息和管理页面。

因此,您基本上应该获得与您的页面对应的令牌

  

要获取单个页面的页面访问令牌,请调用API端点   / {page-id}使用用户访问令牌并询问该字段   的access_token。您需要权限pages_show_list或manage_pages   成功执行此调用。

然后发出发布内容的请求,例如消息

  

要将文字发布到Page的Feed,请提供带有的消息参数   文本以及页面ID:

POST https://graph.facebook.com/546349135390552/feed?message=Hello

成功时,Graph API会使用包含Page

的JSON进行响应
  

ID和帖子的ID:

     

{“id”:“546349135390552_1116689038356556”}

阅读上面的链接,您将获得更多相关信息。