2015-05-01 56 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提到这个地方会更好。

相关问题