我已经搜索了stackoverflow一整天,但没有找到答案,所以我们开始吧。
我正试图从流表中获取数据,如下所示:
FQL: SELECT post_id, message, created_time FROM stream WHERE source_id = 131559313586863
URL: https://graph.facebook.com/fql?q=SELECT+post_id%2C+message%2C+created_time+FROM+stream+WHERE+source_id+%3D+131559313586863&access_token=10669xxxxx74470|PF-7GSdBx0Nxxxxxkdi1KwSQG-w
但我收到了一个400错误的请求作为响应,并返回错误消息:"请求此资源需要访问令牌。">.
我正在使用以下url获取应用程序访问令牌:https://graph.facebook.com/oauth/access_token?client_id=FACEBOOK_APP_ID&client_secret=FACEBOOK_APP_secret&grant_type=client_credentials
Facebook在此博客文章中声明"您需要传递有效的应用程序或用户访问令牌才能访问此功能。">。功能指/feed和/posts(流表(。此外,这个维基告诉关于使用流表的相同故事,"从2011年6月3日起,查询此表需要一个令牌。您可以使用任何应用程序或用户令牌进行查询。">.
有人看到我的明显缺陷了吗
请注意:
- FQL查询中的配置文件是公共的
- 我需要这个来通过cronjob运行userless。不可能进行用户交互
- 如果我将应用程序访问令牌替换为来自https://developers.facebook.com/tools/explorer
您确定您的应用程序在应用程序设置中没有设置为"桌面/本地"吗?如果是这样,应用程序访问令牌就不能使用
对我来说很好——一旦我放入有效的访问令牌并使用HTTPS。