2012-08-14 180 views
1

我们使用Facebook JS SDK向用户验证我们的应用程序,然后将该信息发送到服务器后端以将用户登录到应用程序中(我们支持多种形式的身份验证,但我们只能使用客户端支持FB流)。确认Facebook访问令牌?

FB能够正确登录,我可以验证用户和其他一切,但有一个我不知道如何处理的皱纹,并且我在查找文档中的任何内容时遇到困难它。除了id之外,Facebook还发回accessToken。我的问题是,如何在服务器端验证accessToken对于给定的id是否正确?我想确保用户发送给我们的数据与Facebook发送给他们的数据相匹配,我无法想象这是不寻常的,但我似乎无法找到任何文档。

回答

2

在从Facebook响应的任何其他方式应该是signed_request字符串,可以验证数据是否真正具有和解码以产生该用户的用户ID和oauth令牌。

将这个和其他响应一起传递给你的服务器端代码应该允许你很容易地验证一切。

+0

这就是我正在寻找的东西。谢谢,cpilko。 – EricBoersma 2012-08-14 23:50:46

0

我可以提出另一个问题的答案!它使用try-catch。这可能是验证身份验证和权限是否有效的唯一方法!这是他们在自己的例子

Facebook OAuthException: (#1)

怎么办

我不认为Facebook提供检查

+0

我很难相信这是确认服务器端用户提交的数据有效的唯一方法。 FB如何期望开发人员处理证书伪造的可能性? – EricBoersma 2012-08-14 21:11:20

+0

好吧,当我看到sdk的制作方式时,我会很认真......我非常震惊,我必须说...我不得不使用很多OAuth类型的api和facebook,不友好的用户。我的合作伙伴使用Facebook的API,他也非常失望! – 2012-08-14 23:03:44