0

我希望我的 Facebook 画布应用在用户的朋友与应用交互时向他们发送应用通知。这是我的服务器端代码(使用 App Engine 和 urllib)。 conf.FACEBOOK_APP_ACCESS_TOKEN是一个应用程序访问令牌,我通过对 Graph API 进行一次调用然后硬编码返回的值来获得它,如链接中所述。应用访问令牌如下所示:

426547656256546|4fhe34FJdeV3WvfF6SNfehs7GfW

这不是我的实际标记:我用数字代替了其他数字,用大写字母代替了其他大写字母,等等,所以你可以看到格式。

url = 'https://graph.facebook.com/'+friendID+'/notifications'
values = {'access_token' : conf.FACEBOOK_APP_ACCESS_TOKEN,
          'href' : 'http://localhost:8080/', 
          'template' : '@['+userID+'] says hi.'}
data = urllib.urlencode(values)
req = urllib2.Request(url, data)
urllib2.urlopen(req)

urlopen给出错误:

WARNING  Stripped prohibited headers from URLFetch request: ['Content-Length', 'Host']
ERROR    HTTP Error 403: Forbidden

我需要在此代码中更正什么才能成功发送应用通知?

4

1 回答 1

0

应用通知只能从 Canvas 应用发送。我的应用Website with Facebook Login在 Facebook 设置中设置为不允许通知。为了解决这个问题,我只是检查App on FacebookWebsite with Facebook Login(尽管我相信它也只能App on Facebook用于)并指定了一个画布 URL。

于 2013-07-30T18:27:30.543 回答