2013-06-10 4 views
0

Этап:отсутствующий параметр client_id

Я хочу, чтобы проверить подлинность пользователей в приложении RubyOnRails с учетными данными Facebook.

Я использую omniauth-facebook камень в Gemfile, но не devise:

gem 'omniauth-facebook' 

Config 1:

Я настроил мой OmniAuth инициализатору (`конфиг/Инициализаторы/omniauth.rb):

Rails.application.config.middleware.use OmniAuth::Builder do 
    provider :facebook, '123456789098765', '12345678909876543212345678909876' 
end 

, но когда я прошу /auth/facebook, он отвечает:

{ 
    "error": { 
     "message": "Missing client_id parameter.", 
     "type": "OAuthException", 
     "code": 101 
    } 
} 

Config 2:

Я читал на других форумах, что я должен передать эти параметры в качестве аргументов Enviroment, поэтому я попытался необходимости модифицировать OmniAuth инициализатору заменить эту строку:

provider :facebook, ENV['FACEBOOK_KEY'], ENV['FACEBOOK_SECRET'] 

и то в терминале I передаются эти значения:

$ export FACEBOOK_KEY=123456789098765 
$ export FACEBOOK_SECRET=12345678909876543212345678909876 
$ rails s 

, но когда я прошу /auth/facebook снова, он отвечает:

{ 
    "error": { 
     "message": "Missing client_id parameter.", 
     "type": "OAuthException", 
     "code": 101 
    } 
} 

ответ

0

Это старый вопрос, вы, вероятно, поняли это, но я просто запустить в точно такую ​​же проблему. Просто введите http://localhost:3000 по адресу http://developers.facebook.com/, а затем на самом деле получите доступ к нему с помощью localhost, а не http://0.0.0.0:3000, как я делал.

Смежные вопросы