验证access_token的用户

时间:2013-12-29 22:48:03

标签: facebook facebook-graph-api facebook-authentication facebook-authorization

在Facebook开发文章Manually Building a Login Flow中,有一节题为“确认身份”。它提到您需要验证通过redirect_uri从他们那里收到的代码和令牌。

我的问题:由于您对刚刚登录的用户一无所知,如何验证您在{{3}的响应中看到的user_id是对的吗?

文章说:

  

因此,在为其生成访问令牌之前,您的应用应确认使用该应用的用户是您拥有响应数据的人。

但是,你怎么能这样做呢?我们是否希望向用户显示有关该user_id的公开信息,并向用户询问“这是你吗?”。我没有看到任何应用程序/网站这样做,所以我假设这没有实际做到。

我错过了什么吗?

1 个答案:

答案 0 :(得分:0)

您可以使用FB.getLoginStatus检索有关已登录用户的信息。它返回用户的响应对象。如果用户已对您的应用程序进行了身份验证,则响应对象将如下所示:

{
    status: 'connected',
    authResponse: {
        accessToken: '...',
        expiresIn:'...',
        signedRequest:'...',
        userID:'...'
    }
}

您可以使用此对象中返回的UserId来验证用户的身份。