2012-01-06 12 views
1

facebook認証用にomniauthをインストールしました。すべてが機能しますが、ルーティングがあります。 OmniAuth Facebook認証ルーティングによる安心認証

  • はlocalhost /認証/ログインfacebook

を訪問した後、私は

  • はlocalhost /認証/ログインfacebook /コールバックに送信されます?コード= AQC3aoZVieeY3WSkYbj4VYoBlpMvE8vAsHkXIhP1o_QCIz2olj7vzwHy1cGKshtRdx_hw6fb8Ru6ErZAYPlIUMuW635bJD2_6pQGe659jTGpZx6h6kBZgumj4o4rJyoDwq032liV6jwP8FFTQDEqoXXkL-ArIpulqpFFUdbssvT8_tNtiAQGxdrylRNdj8hYnHA

これは何かを作成するためにコントローラにルーティングしません。のみ

  • はlocalhost /認証/ログインfacebook /コールバック?= AQC3aoZ

コードを作成し、資格情報が無効であることを確認するために私が送信されます。

私は私が間違っているものをわからないですし、他にはないながら、なぜ1が動作

match '/auth/facebook/callback' => 'auths#create' 

を使用しています。

答えて

1

私はちょうどこの設定を得ることに多くの問題がありました。 OmniAuthは "localhost"を打っていても、facebookに何かの戻りURL(127.0.0.1)を私に送っています。だから、あなたが本当に必要なものです:

アプリケーションドメイン:localhostの

サイトのURL(これはIPアドレスにすることはできませんので):

(これはOmniAuthが通過しているIPアドレスであるため)http://127.0.0.1:3000を... Facebookはこれをマッチさせる必要があると不平を言います。それはあなたがローカルテストをすることが不可能になるでしょう。この問題を回避するには、上記の設定をそのままにして、モバイルWebセクションに移動し、モバイルWeb URLをhttp://localhost:3000に入力します。これにより、FBの検証を行い、上記の設定を使用することができます。