【发布时间】:2014-06-13 21:48:28
【问题描述】:
我有一个 ruby on rails 应用程序,目前支持使用 devise / omniauth 进行 facebook 身份验证。
正在构建一个需要支持 facebook 身份验证的 iOS 客户端。
我的问题是,如何使用访问令牌服务器端在omniauth 回调之外获取用户的电子邮件?
我的理解是,omniauth 提供了一些中间件,在 facebook 回调中将包含所有信息的身份验证哈希写入 request.env['omniauth.auth']
见:https://github.com/mkdynamic/omniauth-facebook
我认为,对于 iOS 客户端,流程有点不同:
- 用户在客户端登录 facebook。
- 用户同意授予应用访问权限。
- 客户端应用程序将 access_token 发布到 rails API。
- Rails 应用通过 facebook 验证访问令牌并检索用户详细信息。
这是第 4 步,我不知道该怎么做。
基本上,一旦我有了访问令牌,当我不在omniauth 回调中时,如何手动获取身份验证哈希?
感谢您的帮助。
【问题讨论】:
标签: ruby-on-rails facebook ruby-on-rails-3 omniauth facebook-authentication