Django POST到Facebook API返回GraphMethodException

时间:2015-07-08 14:30:04

标签: python django facebook api facebook-graph-api

我正试图从我的网站发布到我的Facebook墙。我已经使用Facebook登录了我的网站,并且还授予了publish_actions权限,但是当我尝试发布到Facebook时,我收到了错误消息。

Facebook说我可以通过发出HTTP POST请求发布到用户的墙上,如下所示:

POST graph.facebook.com
  /{user-id}/feed?
    message={message}&
    access_token={access-token}

user-idmessageaccess-token [令牌长期存在]是正确的,因为Facebook API调用响应返回。

我还有pip install requestsan elegant and simple HTTP library for Python, built for human beings

我的代码:

import requests
if user.publish:         
    message = post_message.encode('utf8')
    url = "https://graph.facebook.com/{0}/feed".format(user.facebook_id)
    msg = {'message':message, 'access_token':user.access_token }
    r = requests.post(url, data=json.dumps(msg))
    return HttpResponse(r)

代码返回以下错误:

{"错误":{"消息":"不支持的帖子请求。请阅读https://developers.facebook.com/docs/graph-api"," type":" GraphMethodException"," code &# 34;:100}}

1 个答案:

答案 0 :(得分:0)

我认为您正在向错误的网址发出请求,它应该是

url = "https://graph.facebook.com/me/feed"

此外,Facebook不允许应用在朋友墙上发布帖子。您只能将帖子发布到墙上。