我正在尝试使用最近发布的新的Graph API Facebook,但我似乎无法让它正常工作.
我已经完成了这些步骤,在/ authorize调用之后,我收到了一个access_token:
access_token=109002049121898|nhKwSTJVPbUZ5JYyIH3opCBQMf8.
当我尝试使用该令牌时,我得到:
{ "error": { "type": "QueryParseException", "message": "An active access token must be used to query information about the current user." } }
我也难过为什么......
-AC
使用Facebook应用程序的令牌时
如果您正在使用me
别名,https://graph.facebook.com/me/
但是您的令牌是为Facebook应用程序获得的,那么"我"就不再是您了 - 它是应用程序或者可能没有.无论如何,这不是你打算让应用程序与自己进行交互.
在这种情况下,您需要通过应用与个人用户帐户进行互动.您需要做什么(在应用程序向用户提出要求时在UI中请求的权限之后)找到您的facebook用户ID#并将其替换为"我"来访问您自己的信息.例如Mark Zuckerberg的facebook用户名是4,所以他是https://graph.facebook.com/4/
me
只有你是你的别名才有效!有时很难记住当前用户在编程Facebook时是谁(即你,页面,应用程序等),因为我们习惯于在大多数时候习惯使用facebook UI.从编程的角度来看,它取决于所获得的令牌代表什么.
Ben Biddington是一篇很有帮助纠正我的博文 Facebook Graph API - 获取访问令牌.
同样的事情在这里 我跟随Ben Biddington的博客获取了访问令牌.尝试使用它时出现相同的错误.Facebook的OAuth实现并没有完全遵循规范,只要文档清晰,我就可以了,显然情况并非如此.如果使用访问令牌返回用户标识和用户名,那将是很好的.