我正在开发一个应用程序,在该应用程序中,我必须使用 Facebook 登录才能从我的后端服务器访问数据。我搜索了这个并得到了那个:
- 首先,用户将输入 facebook 的用户名和密码,然后将请求发送到服务器。
- 如果用户通过身份验证,则获取用户的访问 token 。
- 在服务器上发送此访问 token 。
- 服务器将验证此访问 token 。
我已成功将我的应用程序与 facebook 连接,即现在用户可以从我的应用程序登录到 facebook。但我现在不知道如何获取用户的访问 token 以及如何在服务器上验证此访问 token 。
你能给我一些示例代码吗?请帮助我,我被困了很长时间。
最佳答案
我不确定这是否是最佳实践,但我就是这样做的。
当您通过任何 SDK 在客户端设备上登录 Android 用户时,您将获得一个用户访问 token 。可以按如下方式访问 token
AccessToken token = AccessToken.getCurrentAccessToken();
if (token != null) {
Toast.makeText(getActivity(), token, Toast.LENGTH_LONG).show();
}
然后您可以将此 token 作为 POST 变量传递到后端:
'access_token': '32b409xceBV78d2932b409xceBV78d29'
使用后台SDK,可以重新获取用户信息。这是 python 中的示例
facebook_graph = facebook.GraphAPI(access_token)
如果电子邮件和 fbid 与存储在您数据库中的用户信息匹配,您授予访问权限:
user = get_user(email=facebook_graph['email'], fbid=facebook_graph['fbid'])
login(request, user)
关于android - 如何使用 facebook 登录从 Android 应用程序中的后端服务器访问数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15497477/