2012-04-09 55 views
2

我使用omiauth與ROR和我碰到下面的錯誤,omniauth認證/失敗消息= invalid_credentials

omniauth AUTH /失敗消息= invalid_credentials,

我能與LinkedIn連接,有人問我:爲所有頁面重定向發生後,我得到上述錯誤的用戶憑據。

這裏是我的回調:

class SessionsController < ApplicationController 
     def create 
      auth = request.env["omniauth.auth"] 
      user = User.find_by_provider_and_uid(auth["provider"], auth["uid"]) || User.create_with_omniauth(auth) 
      session[:user_id] = user.id 
      redirect_to root_url, :notice => "Signed in!" 
     end 

     def destroy 
      session[:user_id] = nil 
      redirect_to root_url, :notice => "Signed out!" 
     end 
end 

和routes.rb中是

Lovelinkedin::Application.routes.draw do 
    root :to => "users#index" 

    match "/auth/:provider/callback" => "sessions#create" 
    match "/auth/failure" => "users#index" 
    match "/signout" => "sessions#destroy", :as => :signout 

end 

和我omniauth.rb是

Rails.application.config.middleware.use OmniAuth::Builder do 
    provider :linkedin, 'xxxxx', 'ffffffff' 
end 

請幫助我。

在此先感謝

+0

剛剛起飛的I是一個新的人ROR這也是我無法解決它的原因之一也是有幫助的,如果你們中的一些人可以幫助我「如何從ROR請求和響應中獲取值」 – SAR 2012-04-09 12:25:59

+0

您正在使用哪個版本的omniauth? 1.0版本在事情發生的方式上做了一些巨大的改變。另外,如果您使用的是舊版本,我會建議升級。 – Gazler 2012-04-09 12:58:51

+0

發佈您的omniauth配置文件。從我記得的地方來看,這是證明證書的地方。 – 2012-04-09 13:05:23

回答

0

你是什麼OmniAuth.config.full_host等於你omniauth.rb文件?

如果重定向到一個安全的網站,那麼就應該是這樣的: 「https://開頭#{} SITE_BASE」

否則,如果它不是一個安全的網站