我正在开发一个应用程序,我必须使用facebook登录才能从后端服务器访问数据。我已经搜索了这个并得到了:
我已成功将我的应用程序与Facebook连接,即现在用户可以从我的应用程序登录到Facebook。但我现在不知道如何获取用户的访问令牌以及如何在服务器上验证此访问令牌。
你能为我提供一些示例代码吗?请帮助我,我很长时间陷入其中。
答案 0 :(得分:1)
我不确定这是否是最佳做法,但这就是我的做法。
当您通过任何SDK在客户端设备上使用Android登录用户时,您将获得用户访问令牌。可以按如下方式访问令牌
AccessToken token = AccessToken.getCurrentAccessToken();
if (token != null) {
Toast.makeText(getActivity(), token, Toast.LENGTH_LONG).show();
}
然后,您可以将此令牌作为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)
答案 1 :(得分:0)
要访问facebook用户的数据,您必须获取权限,以下链接可能对您有用。看看吧...... https://developers.facebook.com/docs/howtos/androidsdk/3.0/fetch-user-data/