Facebook获得短暂的访问令牌Android应用程序并传递给服务器

时间:2014-10-20 05:57:51

标签: android ios facebook spring-security

对于从我们的Android应用程序和iOS应用程序注册的用户,我们需要从应用程序生成短期访问令牌,并且需要让服务器生成长期令牌。 参考https://developers.facebook.com/docs/facebook-login/access-tokens#extending,我们看到以下内容 -

从您的服务器而不是客户端拨打此电话。应用程序密钥包含在此API调用中,因此您永远不应该在客户端实际发出请求。而是实现发出请求的服务器端代码,然后将包含长期令牌的响应传递回客户端代码。这将是与原始令牌不同的字符串,因此如果您要存储这些令牌,请替换旧令牌。

一旦您检索了长期存在的令牌,您就可以从服务器中使用它或将其运回客户端以便在那里使用。

当我们有一个Android应用程序和服务器而不是一个网页作为客户端时,我们如何实现这一点?

facebook文档提到使用Facebook移动SDK的移动应用获得了长寿命令牌。如何从Android应用程序获取短期访问令牌?我们如何在Facebook文档中提到的移动应用程序中实现此实现 - Web客户端进行身份验证,通过服务器交换短期令牌以获取长期令牌,将令牌发送回Web客户端,然后发送回Web客户端和使用长期令牌进行呼叫。他们也在文档中提到过从服务器拨打此电话,而不是客户端 - GET / oauth / access_token?
    grant_type = fb_exchange_token&安培;
    CLIENT_ID = {应用ID}&安培;     client_secret = {应用秘密}&安培;     fb_exchange_token = {short-lived-token}

1 个答案:

答案 0 :(得分:0)

查看Design for Facebook authentication in an iOS app that also accesses a secured web service

您只需在服务器上创建一个接收访问令牌的WebService,并采取相应的操作。