私はユーザーがソーシャルネットワークをシステムにリンクさせる方法としてOmniAuthを使用しています。だから私は共通の一致'/auth/:provider/callback', to: 'authentications#create'
私のルートにあります。OmniAuthの起源 -/auth/facebookがどこから呼び出されたか
これは問題なく、特定のユーザーの情報をテーブルに保存します。しかし、私はOmniAuthを使用する別の方法があります。これは、これをオーバーラップさせるべきではありません。ユーザーは/ auth/facebookへの呼び出しを使用してシステムにログインすることができるため、その情報を認証テーブルに格納するだけでなく、ユーザーをシステムにログインさせる必要があります。
一方、ログインしているユーザーはログインせずに自分のFacebookアカウントをリンクしたいだけかもしれませんが、その電話は同じ/auth/facebook
に送られます。だから私の質問は:auth/facebook
への呼び出しがどこから行われたのかをどのように発見できますか?
これは良いアイデアです。ここでの唯一のことは、Facebookとの取引が別のコントローラの別のアクションでサインアップされていることです。私は見るでしょう。 – Nobita