我只是在学习restfb
。我在FB网站上注册了一个应用程序,并获得了应用程序ID和密钥。但是,根据this tutorial,我应该拥有一个访问令牌来初始化DefaultFacebookClient。我尝试按照那里的说明进行操作,但是没有一个充分说明如何从应用程序ID和密钥中获取访问令牌。
Request https://graph.facebook.com/oauth/authorize?client_id=MY_API_KEY&redirect_uri=http://www.facebook.com/connect/login_success.html
Facebook will redirect you to http://www.facebook.com/connect/login_success.html?code=MY_VERIFICATION_CODE
Request https://graph.facebook.com/oauth/access_token?client_id=MY_API_KEY& redirect_uri=http://www.facebook.com/connect/login_success.html&client_secret=MY_APP_SECRET&code=MY_VERIFICATION_CODE
Facebook will respond with access_token=MY_ACCESS_TOKEN
我确实做到了,但是每次我得到
{
"error": {
"message": "Error validating verification code. Please make sure your redirect_uri is identical to the one you used in the OAuth dialog request",
"type": "OAuthException",
"code": 100
}
}
知道我应该怎么做才能获取访问令牌并开始使用API吗?
最佳答案
插件作者似乎假设您将使用Login Dialog或JavaScript SDK对用户进行身份验证。
这两种方法都返回您可以使用的用户访问令牌。您需要您的App_ID和Secret来初始化它们。大多数Facebook操作都需要用户访问令牌。
如果仅通过API调用来读取公共数据,则可以摆脱应用程序访问令牌。为此,您可以使用RestFB的DefaultFacebookClient().obtainAppAccessToken() method。