ステージ:
Facebook 資格情報を使用して RubyOnRails アプリケーションでユーザーを認証したいと考えています。
omniauth-facebook
Gemfile で gem を使用していますが、いいえdevise
:
gem 'omniauth-facebook'
構成 1 :
omniauth イニシャライザを設定しました (`config/initializers/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
}
}
構成 2 :
これらのパラメーターを環境引数として渡す必要があることを他のフォーラムで読んだので、次の行を置き換えて omniauth 初期化子を変更してみました。
provider :facebook, ENV['FACEBOOK_KEY'], ENV['FACEBOOK_SECRET']
次に、ターミナルで次の値を渡します。
$ export FACEBOOK_KEY=123456789098765
$ export FACEBOOK_SECRET=12345678909876543212345678909876
$ rails s
しかし、/auth/facebook
もう一度リクエストすると、次のように応答します。
{
"error": {
"message": "Missing client_id parameter.",
"type": "OAuthException",
"code": 101
}
}