everyauthを使用して、Facebook 認証をユーザー アカウント システム (nodejs、express) に統合しています。
現在行われていること (疑似コード):
everyauth
.facebook
.appId('....')
.appSecret('.....')
.findOrCreateUser(
function (session, accessToken, accessTokenExtra, fbUserMetadata) {
...
}
.redirectPath('/internal/facebook');
認証は完全に機能します。問題は、このフローを通過するときです。
ユーザーは現在、ユーザー エージェント用の Facebook Cookie を持っていません (ユーザーは Facebook にログインしていません)。
ユーザーが Facebook 経由で認証を呼び出します ( everyauth の/auth/facebookサービスが呼び出されます)
Facebookの「ログイン/サインイン」ページがロードされました。ユーザーは、新しい Facebook アカウントを作成し、[Facebook にサインアップ] を選択したいと考えています。
ユーザーは登録の詳細を終了し、受信したばかりのメールのリンクをクリックして、アプリ経由で Facebook アカウントの登録を確認する必要があります。
ユーザーは自分のメールにアクセスし、リンクをクリックすると 、ユーザー アカウントのルート「/」にリダイレクトされます。-これは、ユーザー アカウント サービスを別のアプリケーションに提供する UI のない Web サービスです...
質問は次のとおりです。
- ユーザーがアプリケーション経由で Facebook にサインアップした後、ユーザーを取得するにはどうすればよいでしょうか? このシナリオでは、findOrCreateUser()は呼び出されません。
- ユーザーがアプリ経由で Facebook にサインアップした後 (ユーザー登録が成功した後)、アプリの "/" へのリダイレクトの動作をオーバーライドするにはどうすればよいですか?