检查用户的Facebook ID和移动客户端的会话是否真实?

时间:2014-02-14 16:21:10

标签: facebook facebook-graph-api

我有一个移动应用,用户可以使用Facebook登录。所以在客户端上,我会得到他们的facebookId和会话令牌。

现在我想将facebook ID发送到我的服务器以链接到他们的帐户。但我想验证该ID是否可信 - 如果我还将会话令牌从客户端发送到服务器,是否有facebook API可以让我验证facebook ID +会话令牌是否真实?

客户端与我的服务器通话的示例:

https://example.com/myservice/getMyAppAccountInfo?fbId=123&fbSessionToken=abc

现在在我的服务器上,如果ID和会话令牌正确,我可以问facebook吗?我不希望恶意用户只是抓住某人的脸书ID然后冒充他们。

由于

1 个答案:

答案 0 :(得分:1)

好的,所以我最后使用我的客户提供的facebook会话令牌调用此服务器端:

https://graph.facebook.com/me?access_token=tokenSuppliedByMyClient

如果access_token是真的,那么你将获得一个json响应,即与该会话令牌相关联的facebook用户对象:

// the facebook user object associated with the session token:
{
  "id": "123", 
  "name": "...",
  ...
}

然后我将json中的“id”属性与客户端提供的facebook ID进行比较。如果此时所有内容都匹配,我会相信客户。