我开发了一个简单的 API 来允许我的 Android/iPhone 应用程序和我的服务器之间进行通信。在我的应用程序中,用户需要对自己进行身份验证,他们使用登录名/密码凭据和以下 API 调用来完成此操作:
http://api.myapp.com/login?user=xxx&pass=pass
应用程序收到回报:
{ "api_token": "xxxx-xxxx-xxxx-xxxx" }
所以基本上我交换我的凭证api_token
.
我想添加 Facebook 连接支持。我已成功使用 Facebook SDK 并收到正确的消息access_token
.
但是,我需要实现一种交换机制access_token
with api_token
假设用户已经将他的帐户与 Facebook 连接(在他的网络用户面板上),那么进行交换的最佳实施方式是什么?
这就是我最终做到的。一年多以来一直运行良好,从未出现过任何问题。这个想法是使用以下 API 调用来交换代币:
http://api.myapp.com/login/facebook?access_token=<facebook_access_token>
服务器端,您验证的有效性access_token
用一个简单的
wget -qO- https://graph.facebook.com/me?access_token=<facebook_access_token>
它会向您发送回一个包含所有用户信息的 JSON,包括用户的 Facebook ID。假设用户已经将他的帐户连接到 Facebook,您可以查找user_id
并发回api_token
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)