0

ステージ:

Facebook 資格情報を使用して RubyOnRails アプリケーションでユーザーを認証したいと考えています。

omniauth-facebookGemfile で gem を使用していますが、いいえdevise:

gem 'omniauth-facebook'

構成 1 :

omn​​iauth イニシャライザを設定しました (`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
   }
}
4

1 に答える 1

0

これは古い質問です。おそらく理解できていると思いますが、まったく同じ問題に遭遇しました。http://developers.facebook.com/に入力するだけhttp://localhost:3000で、実際に localhost を使用してアクセスできます。http://0.0.0.0:3000

于 2013-12-07T04:46:10.120 に答える