FacebookアカウントでログインするためのDevisewikiの指示に従いました。
ほとんどの場合、機能します。
問題は、(user_omniauth_authorize_path(:facebook)
)にログインすると、Facebookに移動して[承認]ボタンをクリックすることです。次に、本来のようにアプリにリダイレクトされますが、コールバック関数を押す代わりに、flash[:notice]
(「無効なクレデンシャル」のためにFacebookから認証できませんでした。」というエラーで同じページにアクセスしました。私が見るバックエンド:
(facebook) Callback phase initiated.
(facebook) Authentication failure! invalid_credentials: OAuth2::Error, : {"error":{"message":"Code was invalid or expired. Session is invalid. This could be because the application was uninstalled after the session was created.","type":"OAuthException","code":100}}
その後Started GET "/accounts/auth/facebook/callback?code=XXX
、がポイントされますが、そのアクション()で処理する代わりに、facebook
に送信されUsers::OmniauthCallbacksController#failure
ます。
しかし、不思議なことに、自分のFacebookアカウントで承認したアプリを見ると、自分のアプリがそこにあります。そして、次にログインリンクをクリックすると、すぐに承認され(FBにリダイレクトされません)、facebook
アクションによってログインします。問題ありません。
なぜこれが起こっているのか、またはデバッグのヒントはありますか?彼らは大いに感謝されるでしょう。ありがとう!