【问题标题】:Rails Devise Omniauth 1.0 with FacebookRails 与 Facebook 一起设计 Omniauth 1.0
【发布时间】:2011-11-05 15:53:28
【问题描述】:

我正在按照 Ryan Bates Railscaast #235 中的步骤进行操作,但是,我正在尝试集成 Facebook 而不是 twitter。

宝石文件

gem "omniauth-facebook", :git => "git://github.com/mkdynamic/omniauth-facebook.git"

身份验证控制器

 def create
   render :text => request.env["rack.auth"].to_yaml
  end

Omniauth.rb

Rails.application.config.middleware.use OmniAuth::Builder do
  provider :facebook, 'ID', 'Secret'
end

路线

  devise_for :users

  resources :authentications
    match '/auth/:provider/callback' => 'authentications#create'

我正在使用http://localhost:3000 对此进行测试,并将其指定为我的 facebook 网站 URL。当我输入 localhost:3000/auth/facebook 时,facebook 成功提示我,但是,我被重定向到: http://localhost:3000/auth/facebook/callback?code=及以下页面内容:

--- !!null ...

我的问题是至少 facebook 电子邮件地址在哪里?还是作为菜鸟我错过了什么?

【问题讨论】:

    标签: ruby-on-rails devise omniauth


    【解决方案1】:

    在您的身份验证控制器中,更改以下行:

    render :text => request.env["rack.auth"].to_yaml
    

    render :text => request.env["omniauth.auth"].to_yaml
    

    还可以查看 RailsCast Episode 241 - Simple OmniAuth,Ryan Bates 已将其更新为与 OmniAuth 1.0 一起使用

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-06-10
      • 2013-02-14
      • 1970-01-01
      • 1970-01-01
      • 2014-05-23
      • 2012-03-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多