[英]Rails Devise Omniauth 1.0 with Facebook
我正在按照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 =和以下頁面內容:
- - !!空值 ...
我的問題是至少Facebook電子郵件地址在哪里? 還是作為菜鳥我想念什么?
在身份驗證控制器中,更改以下行:
render :text => request.env["rack.auth"].to_yaml
至
render :text => request.env["omniauth.auth"].to_yaml
還可以看一下RailsCast第241集-Simple OmniAuth ,Ryan Bates更新了該版本以與OmniAuth 1.0一起使用
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.