2015-05-01 66 views
0

我的FB應用程序是公開的(綠點),並且對管理員和開發人員來說工作得很好。但是,非用戶嘗試登錄時身份驗證會失敗。Facebook應用程序公開,但只能由開發人員訪問

FB應用截圖:http://imgur.com/r25vyjH

有趣的是,非開發用戶都能夠達到的權限屏幕,但不能使用FB登錄。我只使用批准的權限: 範圍:'email,public_profile,user_friends,user_birthday'

我在rails + devise + omniauth + omniauth-facebook。

在代碼中,它重定向到OmniauthCallbacksController#failure。我試圖創建失敗行爲來看看發生了什麼,但它沒有給我任何消息。不知道如何調試。

我使用如下:

gem 'devise', '3.4.1' 
gem 'omniauth', '1.2.2' 
gem 'omniauth-facebook', '2.0.0' 

這是我在production.log看到:

I, [2015-05-01T17:55:39.141944 #2341] INFO -- : Started GET "https://stackoverflow.com/users/auth/facebook" for 122.167.223.121 at 2015-05-01 17:55:39 +0000 
I, [2015-05-01T17:55:39.706464 #2341] INFO -- : Started GET "https://stackoverflow.com/users/auth/facebook/callback?code=AQC5ypphUjqzOquyD4HMWFvaCZjvMfahg5Y_...fljWMCh&state=0857ab97a79206c582b2b7b5391d99cda7b5d4e5ba2f730e" for 122.167.223.121 at 2015-05-01 17:55:39 +0000 
I, [2015-05-01T17:55:41.231336 #2341] INFO -- : Processing by OmniauthCallbacksController#failure as HTML 
I, [2015-05-01T17:55:41.231394 #2341] INFO -- : Parameters: {"code"=>"AQC5ypphUjqzOquyD4HMWFvaCZjvMfahg5Y...MCh", "state"=>"0857ab97a79206c582b2b7b5391d99cda7b5d4e5ba2f730e"} 
I, [2015-05-01T17:55:41.232699 #2341] INFO -- : Redirected to http://www.oyelife.com/ 
I, [2015-05-01T17:55:41.232832 #2341] INFO -- : Completed 302 Found in 1ms (ActiveRecord: 0.0ms) 

幫助表示讚賞。

+0

你是什麼意思「但無法使用FB登錄」?是否起訴工作?當他們輸入用戶名和密碼時會發生什麼?更多的信息,以便我們可以幫助您 –

+0

那麼,用戶輸入用戶名和密碼後,它會返回到登錄頁面(主頁),而無需用戶登錄(我的網站的回調URL未被調用)。如果用戶是開發人員(或管理員)之一,則工作正常。 – Vikas

+0

您確定他們用來登錄的電子郵件地址不在數據庫中嗎? –

回答

0

經過更多的修補後,我自己想到了這一點。

似乎回調URL也必須在中列出設置>高級> OAuth設置>有效的OAuth重定向URI。它對於開發者來說沒有它,但是對於公衆是必需的。

如果Facebook提到這個地方會更好。

相關問題