在Facebook开发文章Manually Building a Login Flow中,有一节题为“确认身份”。它提到您需要验证通过redirect_uri
从他们那里收到的代码和令牌。
我的问题:由于您对刚刚登录的用户一无所知,如何验证您在{{3}的响应中看到的user_id
是对的吗?
文章说:
因此,在为其生成访问令牌之前,您的应用应确认使用该应用的用户是您拥有响应数据的人。
但是,你怎么能这样做呢?我们是否希望向用户显示有关该user_id
的公开信息,并向用户询问“这是你吗?”。我没有看到任何应用程序/网站这样做,所以我假设这没有实际做到。
我错过了什么吗?
答案 0 :(得分:0)
您可以使用FB.getLoginStatus检索有关已登录用户的信息。它返回用户的响应对象。如果用户已对您的应用程序进行了身份验证,则响应对象将如下所示:
{
status: 'connected',
authResponse: {
accessToken: '...',
expiresIn:'...',
signedRequest:'...',
userID:'...'
}
}
您可以使用此对象中返回的UserId来验证用户的身份。