在python中作为应用程序页面发布到Facebook应用程序页面墙

在python中作为应用程序页面发布到Facebook应用程序页面墙,python,django,facebook,facebook-graph-api,facebook-apps,Python,Django,Facebook,Facebook Graph Api,Facebook Apps,我正在尝试在我的应用程序页面的墙上写一篇帖子,好像它来自应用程序页面(不是其他用户),在研究之后,我似乎没有找到真正有效的解决方案 我已尝试按照此处的文档进行操作: 然后,我通过以下方式获取“访问令牌页面”: https://graph.facebook.com/oauth/access_token?client_id=APP_ID&client_secret=CLIENT_SECRET&grant_type=client_credentials 然后,我尝试使用faceboo

我正在尝试在我的应用程序页面的墙上写一篇帖子,好像它来自应用程序页面(不是其他用户),在研究之后,我似乎没有找到真正有效的解决方案

我已尝试按照此处的文档进行操作:

然后,我通过以下方式获取“访问令牌页面”:

https://graph.facebook.com/oauth/access_token?client_id=APP_ID&client_secret=CLIENT_SECRET&grant_type=client_credentials
然后,我尝试使用facebook python api:

graph1 = facebook.GraphAPI(access_token_page)
graph1.put_wall_post(fbmessage, attachment, profile_id=APP_PAGE_ID)
但是,这只会返回以下facebook错误:

*** GraphAPIError: (#200) The user hasn't authorized the application to perform this action
你知道我遗漏了什么吗?请记住,我希望让应用程序页面自己发帖子,而不是从其他用户名生成帖子


谢谢大家!

您所做的是使用应用访问令牌发布到页面

您应该使用页面访问令牌以页面管理员的名义发布用户访问令牌也可以使用,但正如中所报告的,这是一个错误,因此在撰写本文时不建议使用用户访问令牌

记录于:

页面访问令牌

以页面而不是当前页面的形式执行以下操作 用户,您必须使用页面的访问令牌,而不是用户访问令牌 通常用于读取图形API对象。此访问令牌可以是 通过发出HTTP GET to/USER\u ID/accounts来检索 管理页面权限

有关不同类型访问令牌的更多信息,请访问

试试Django Facebook: 这将解决许多API问题

您需要页面访问令牌,请参见此处: 请求管理页面作为额外权限

完成设置后,只需执行以下操作:

user_graph = OpenFacebook(user_access_token)
response = user_graph.get('me/accounts')
# turn the response to a dict, and be sure to get the page you want
page_access_token = response['data'][0]['access_token']
graph = OpenFacebook(page_access_token)
graph.set('me/feed', message='helloworld')
您可以在此处找到更多文档: