0

私は匿名でGoogle/Facebookにログインすることに成功しました。Angularfire2匿名ユーザーとFacebook/Googleアカウントのマージ

user.service.ts

loginFacebook() { 
    this.af.auth.login({ 
     provider: AuthProviders.Facebook, 
     method: AuthMethods.Popup, 
    }); 
} 
loginGoogle() { 
    this.af.auth.login({ 
     provider: AuthProviders.Google, 
     method: AuthMethods.Popup, 
    }); 
} 
loginAnonymous() { 
    this.af.auth.login({ 
     provider: AuthProviders.Anonymous, 
     method: AuthMethods.Anonymous, 
    }); 
} 

しかし、私がやりたい事は、Facebookのユーザーと匿名ユーザーをマージすることです。

さんが今起こる何ので:
匿名ユーザー=> UUID 1
匿名ユーザー(UUID 1)=>ログインfacebook /グーグル=> FBのユーザー(UUID 2)

を記録だから私は、データベース内の2つの異なるUUIDを持っています同じユーザーの場合

AngularFire2でこれを行う方法を知っていますか?

おかげ

答えて

0

匿名ユーザーをログインした後、ユーザーがFacebookの/ Googleアカウントにアップグレードされるたびに、最初にリンクしてみてください。 anonymousUser.linkWithPopup(facebookProvider)を呼び出します。それは成功するか、Facebookのユーザーが存在するというエラーが発生します。その場合、エラーにはFacebookの認証情報が含まれます。その後、signInWithCredential(error.credential)を使用して、匿名ユーザーを手動でfacebookユーザーとマージ(一方から他方へデータをコピー)し、匿名ユーザーを削除することができます。

関連する問題