2016-07-14 5 views
0

私がしなければ、コードの束を投稿するつもりはありません。 Firebase.google.comから直接ペーストされています。私はすべての認証方法がうまく動作していますが、Github oAuthはすべての種類のものに縛られています。だからしばらくして、Firebase v3.0から3.1に移行することに決めました。修正はありません。Firebase v3.1 Web SDK - Github oAuthが動作しない

リダイレクトページがポップアップんが、私は私の定期的なGithubの資格情報を使用することはできません - Githubのアカウントは、開発者のアプリを作成するために使用される(私は私の他のウェブタブにGithubのからログアウトするにもかかわらず、私のauthAction()キャッチは言う:

。 。

An account already exists with the same email address but different sign-in credentials. Sign in using a provider associated with this email address.

だから、私は第2のダミーGithubのアカウントを作成し、私は今、それを使用してログインすることができますしかし、ログイン時に、user.emailuser.displayNameは戻っnullてくる

もう奇妙なこと:すべてのアプリからログアウトした場合、Githubo経由でFirebaseアプリにログインしますAuthを開いて新しいタブを開き、Githubに移動します。すでにログインしています!おそらく、どういうわけか私のトークンはウェブサイト間で共有されていますか? Google、Facebook、Twitter、Anon、Email/Pwdはすべてうまく動作します。

誰もがあまりにもこのGithubのOAuthの問題を持っているか、それは私だけです...

答えて

2

あなたはエラーを取得する場合:? アカウントはすでに同じメールアドレスが異なるサインイン資格情報を使用して存在しています。このメールアドレスに関連付けられたプロバイダを使用してログインします。 これは、別のプロバイダの同じメールを使用して既にサインインしていることを意味します。同じプロバイダにサインインし、githubアカウントをその現在のユーザにリンクすることができます。 firebase.auth(().currentUser.link(githubCred)またはfirebase.auth(().currentUser.linkWithPopup/Redirect(githubProvider)

あなたの電子メールと名前を提供していないGithubに関しては、githubアカウントの設定で電子メールと情報が開示されないように設定できます。 signInWithPopup/signInWithRedirectを使用していて現在Firebaseで動作していない場合は、通常、user:email oauthスコープを尋ねる必要があります。チームは修正に取り組んでいます。

3つ目の問題については、正しく理解しているかどうかわかりません。 Githubや他のプロバイダを使用してFirebaseにサインインする場合、そのアプリケーションのアクセス許可に同意する前に、そのプロバイダにログインする必要があります。そのプロバイダのサイトに移動すると、ログインするのは正常です。別のアプリケーションでgithubを使用してFirebaseにサインインしようとすると、githubにログインしますが、そのアプリケーションの新機能に同意するよう求められますパーミッション。

+0

答えをありがとう。 .onAuthStateChangedメソッドを使用して問題が発生したときに、アプリがすべてのプロバイダからログアウトされることがわかりました。 user.emailはFacebookを除いて動作します。この場合は、oAuthアクセスの昇格を依頼する必要があります。私は知らない - 私は正直に戻ったときに私は元に戻るだろう。私は今、私のアプリの他の部分の開発に移ってきました。 –

関連する問題