Firebase, как использовать сервис аутентификации с бэкэндом RESTapi для node.js - PullRequest
0 голосов
/ 01 сентября 2018

Я разработчик Java-сценариев с полным стеком.

У меня есть проект, интерфейс был разработан с использованием vue.js.

Бэк-энд разрабатывается с использованием платформы node.js Express. Мой бэкэнд тоже RESTapi.

Поскольку мой дизайн пользовательского интерфейса закончен, я создал базовый проект и разместил его. Было очень просто разместить переднюю часть.

Мой бэкэнд еще не имеет аутентификационной части. Я хочу попробовать в этом проекте службу аутентификации fire-base.

Обычный способ аутентификации - вот так.

  1. Передайте детали в бэкэнд для создания учетной записи пользователя.
  2. Backend создает учетную запись пользователя.
  3. Затем, после того, как пользователь, пытающийся зарегистрировать учетные данные, передается на сервер и освобождает токен от сервера
  4. Этот токен хранит во временной памяти браузера пользователя и прикрепляется к каждому запросу, который он передает на сервер.
  5. Серверная часть проверяет токен и предоставляет доступ к ресурсам.

Это нормальный поток, который я знаю.

Я не могу понять, как меняется этот нормальный поток, когда я использую fire-base для выполнения части моего проекта с аутентификацией.

КАК ДОСТИГНУТЬ АВТОРСКИЕ ТРЕБОВАНИЯ С ИСПОЛЬЗОВАНИЕМ FIREBASE?

1 Ответ

0 голосов
/ 01 сентября 2018

Есть два случая.

Сначала , вы пропускаете часть создания пользователя из бэкэнда и создаете учетные записи пользователей во внешнем интерфейсе, используя аутентификацию с помощью firebase. В документации есть все, чтобы вы могли начать: https://firebase.google.com/docs/auth/web/start Например. при использовании аутентификации по электронной почте и паролю:

firebase.auth().createUserWithEmailAndPassword(email, password).catch(function(error) {
  // Handle Errors here.
  var errorCode = error.code;
  var errorMessage = error.message;
  // ...
});

Войти после этого:

firebase.auth().signInWithEmailAndPassword(email, password).catch(function(error) {
  // Handle Errors here.
  var errorCode = error.code;
  var errorMessage = error.message;
  // ...
});

Помните:

Пользователь Firebase имеет фиксированный набор базовых свойств - уникальный идентификатор, основной адрес электронной почты, имя и URL фотографии - хранятся в проекте Пользовательская база данных, которая может быть обновлена ​​пользователем (iOS, Android, Интернет). Вы не можете добавлять другие свойства к объекту Firebase User напрямую; вместо этого вы можете хранить дополнительные свойства в вашей Firebase База данных в реальном времени.

С https://firebase.google.com/docs/auth/users

Второй , вы можете направить создание пользователя через ваш бэкэнд, используя firebase-admin в nodejs для создания учетных записей пользователей. Запросы на вход в систему будут поступать с внешнего интерфейса непосредственно в базу Firebase (а не на ваш внутренний сервер). Так что бэкэнд предназначен только для создания / управления пользователями.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...