OOAuthException:必须使用活动访问令牌来查询有关当前用户的信息
Posted
技术标签:
【中文标题】OOAuthException:必须使用活动访问令牌来查询有关当前用户的信息【英文标题】:OOAuthException: An active access token must be used to query information about the current user 【发布时间】:2016-07-07 23:32:19 【问题描述】:我正在使用 restfb java sdk 在我的应用程序中添加 facebook 登录 我已经创建了一个测试应用程序,但是当我尝试获取用户的详细信息时,会显示以下错误消息
[FacebookOAuthException: Received Facebook error response of type OAuthException: An active access token must be used to query information about the current user. (code 2500, subcode null)]
这是我的代码
val config = ConfigFactory.load()
val FBAppId = config.getString("fb.app.id")
val FBAppSecret = config.getString("fb.app.secretkey")
val aceessToken = new DefaultFacebookClient().obtainAppAccessToken(FBAppId, FBAppSecret)
log.info("token is "+aceessToken.getAccessToken)
val facebookClient = new DefaultFacebookClient(aceessToken.getAccessToken)
val fbuser = facebookClient.fetchObject("me",classOf[User] ,Parameter.`with`("fields", "id,name,email, first_name , last_name"))
log.info("name : ", fbuser.getName)
log.info("User first name : ", fbuser.getFirstName)
log.info("User last name : " , fbuser.getLastName)
log.info("User Email : " , fbuser.getEmail)
这是打印在控制台上的访问令牌
token is 587299244766256|udH5HgYve1DHGjKHU55hBw9Ik5Y
(我认为这不正确,因为我在 Facebook 文档中读到访问令牌由 150 个字符组成,并且生成的令牌不是 150 个字符长) 并在这一行
val fbuser = facebookClient.fetchObject("me",classOf[User] ,Parameter.`with`("fields", "id,name,email, first_name , last_name"))
抛出的异常
[FacebookOAuthException: Received Facebook error response of type OAuthException: An active access token must be used to query information about the current user. (code 2500, subcode null)]
请帮助我如何获取登录用户的详细信息
【问题讨论】:
【参考方案1】:您无法使用应用访问令牌获取端点 me
。您需要用户或页面访问令牌。
【讨论】:
以上是关于OOAuthException:必须使用活动访问令牌来查询有关当前用户的信息的主要内容,如果未能解决你的问题,请参考以下文章
facebook Uncaught OAuthException:必须使用活动访问令牌来查询有关当前用户的信息
Facebook Android SDK 4.0:newGraphPathRequest 返回“必须使用活动访问令牌来查询有关当前用户的信息。”
OAuthException using Socialite with facebook - "message": "必须使用活动访问令牌来查询有关当前用户的信息。&qu