Обработка учетной записи существует с другой проблемой учетных данных с React Native и Firebase - PullRequest
0 голосов
/ 07 июня 2018

Существует хорошо документированная ошибка (или, может быть, ее лучше называть «индивидуальным шаблоном»), возникающая при аутентификации Firebase, когда у пользователя есть уже существующая учетная запись, связанная с входом в Google, и затем они пытаются использоватьFacebook Войти с тем же адресом электронной почты, и Firebase выбрасывает error.code из auth/account-exists-with-different-credential

Здесь, с ноября 2016 года, есть более старая Q / A: Firebase перезаписывает вход в аккаунт Google

Лучше всего выглядит решение с мая 2017 года: https://stackoverflow.com/a/44040373/51482

Однако принятый ответ от мая 2017 года фактически не работает для React Native (закомментированные примеры относятсяв JS Web), и, как представляется, не существует каких-либо указаний для наилучшего пользовательского опыта, который мы можем предоставить в этой ситуации, используя платформу React Native.

Вот несколько вопросов, которые я могу задать, где ответы могут быть заданыожидания того, как решить эту проблему наилучшим образом:

  1. Есть ли способ связать существующие Google и Facebook в соответствии сучетные записи без необходимости дополнительного входа пользователя в систему с помощью входа в Google?
  2. Можно ли использовать выброшенное значение error.email, извлечь соответствующую учетную запись Firebase Auth / Google на основе этого электронного письма, а затемсвязать учетную запись Google со значением Facebook error.credential?
  3. В комментарии к вышеупомянутому ответу написано If you have your own mechanism to get that token, you get it for that Google email user and sign in.Есть ли какие-либо рекомендуемые способы найти этот механизм?
  4. Является ли единственный известный шаблон UX, чтобы заставить пользователя прочитать сообщение о существующей учетной записи Google, направить его для входа в учетную запись Google, а затем нажатьих связать учетную запись Facebook на другом экране?

Документация Firebase довольно солидна между родной iOS, родной Android и веб-платформами, но React Native является своего рода промежуточным звеном между всеми этими кодовыми базамии я пытаюсь заполнить пробелы для хорошего пользовательского опыта аутентификации с этим сценарием.

...