2017-05-18 18 views
0

カスタムトークンを追加するカスタムトークンを作成しています。 FirebaseはパスワードとGoogleプロバイダを持つように設定されています。ここでは、Googleのサインインについては が流れている -firebase admin sdk getUserByEmail Googleプロバイダ - ユーザーが見つかりませんでした

  1. サインインのマニュアルグーグルを使ってサインインがid_token
  2. は、カスタムトークン生成のための私のノードサーバに送信取得した後。
  3. 私はノード上id_tokenしたら、ユーザはすでに私は、ユーザー-が見つからないために取得しています管理SDK getUserByEmail

を使用することにより、firebaseに存在する場合、私は、ユーザー

  • チェックの電子メールIDを取得しますGoogleプロバイダを使用しているユーザーの場合、firebaseコンソールのユーザーが表示されますが、admin sdkで取得できません。

  • 答えて

    0

    admin API getUserByEmailは、現在のメールのトップレベルメールのみを参照します。設定されていることを確認してください。 「メールごとの複数のアカウント」設定を使用している可能性があります。この設定では、currentUser.providerDataではなく、currentUser.emailでGoogleメールを設定します。

    +0

    その場合、Googleのプロバイダ(または任意のプロバイダ)のユーザーをメール(または名前など)でどのように見つけることができますか? –

    +0

    「電子メールごとの複数のアカウント」はFirebase Authのデフォルトオプションではありません。電子メールでユーザーを検索したい場合は、パスワードユーザー、Facebook、Googleなどを同じ電子メールと異なるUIDで持つことができるように、複数のユーザーを取得する可能性があります。私はその場合、あなた自身のルックアップインデックスを維持しなければならないかもしれないと思います。 (電子メール:[list of uids]) – bojeil

    関連する問題