Facebook Connect可通过个人API进行身份验证

Eri*_*rch 7 authentication api facebook

我开发了一个简单的API,允许我的Android/iPhone应用程序和我的服务器之间的通信.在我的应用程序中,用户需要对自己进行身份验证,并使用以下API调用使用登录/密码凭据进行身份验证:

http://api.myapp.com/login?user=xxx&pass=pass
Run Code Online (Sandbox Code Playgroud)

申请收到回报:

{ "api_token": "xxxx-xxxx-xxxx-xxxx" }
Run Code Online (Sandbox Code Playgroud)

所以基本上我交换了我的凭证api_token.

我想添加Facebook连接支持.我已成功使用Facebook SDK并收到正确的access_token.

但是,我需要实现一种机制来交换access_tokenapi_token

假设用户已经将他的帐户与Facebook连接(在他的网络用户面板上),那么进行交换的最佳实现是什么?

Eri*_*rch 5

这是我最终做到的.它工作了一年多,从来没有任何问题.我们的想法是使用以下API调用来交换令牌:

http://api.myapp.com/login/facebook?access_token=<facebook_access_token>
Run Code Online (Sandbox Code Playgroud)

服务器端,你access_token用一个简单的验证有效性

wget -qO- https://graph.facebook.com/me?access_token=<facebook_access_token>
Run Code Online (Sandbox Code Playgroud)

它会向您发送包含所有用户信息的JSON,包括用户的Facebook ID.假设用户已经将他的帐户连接到Facebook,您可以查找user_id并发送回来api_token.

  • 好吧,在某种程度上,你是对的,但就我而言,我们是"App A".恕我直言,这与订阅我们的时事通讯的用户相同:我们可以向用户发送垃圾邮件或向大量第三方出售电子邮件,但我们不是因为我们是一家负责任的公司(对法律负有责任) (2认同)