簡體   English   中英

Firebase Facebook 身份驗證不會為某些用戶返回電子郵件

[英]Firebase Facebook authentication not returning email for some users

我使用 Firebase 運行了一個 Ionic 3 應用程序。 一切都很好,直到其中一個用戶登錄並且他的電子郵件地址在 Firebase 身份驗證部分中為空白。 下面的代碼是否需要為它設置任何額外的權限來檢索電子郵件地址?

  facebookLogin(): void {
    this.facebook.login(['email']).then((response) => {
      const facebookCredential = firebase.auth.FacebookAuthProvider
        .credential(response.authResponse.accessToken);

      firebase.auth().signInWithCredential(facebookCredential)
        .then((success) => {
          // console.log("Firebase success: " + JSON.stringify(success));
          this.user = success;
          this.doLoginStuff(success, 'facebook');
        })
        .catch((error) => {
          if (error.code === "auth/account-exists-with-different-credential") {
            this.presentToast(error.message)
          }
          // alert("Firebase failure: " + JSON.stringify(error));
        });

    }).catch((error) => { console.log(error) });
  }

不要使用.signInWithCredential ,使用.onAuthStateChanged或者,這可能是 Facebook 方面的問題。 瀏覽到 developer.facebook.com 並檢查您的應用程序是否已打開/公開,然后檢查您的應用程序評論頁面以確保您可以收到電子郵件。

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM