Как найти пользователя, вошедшего в систему или нет со стороны облачной функции с помощью Firebase? - PullRequest
0 голосов
/ 14 февраля 2020

Для обеспечения динамической доставки контента c я использую переписывает в хостинге Fire Base. Когда веб-сайт открывается с index.html, браузер запрашивает функцию облачной базы main.

"rewrites": [ {
      "source": "/index.html",
      "function":"main"
}]

Теперь я столкнулся с проблемой предоставления динамического c контента на основе статуса входа пользователя. Я также проверил аутентификацию на стороне клиента, используя JS.

firebase.auth().onAuthStateChanged(function(user) {
  if (user) {
    // User is signed in.
  } else {
    // No user is signed in.
  }
});

Я не знаю о веб-разработке. Здесь у меня есть несколько вопросов,

Как найти более гибкий способ проверки подлинности пользователя? Используются ли для этого файлы cookie? Я спрашиваю, потому что не знаю, как передать firebase-token в облачную функцию main.

Пожалуйста, напишите мне идею. Спасибо всем.

1 Ответ

2 голосов
/ 14 февраля 2020

Краткий ответ: Конечные пользователи не имеют статуса входа, который отображается на сервере. Это не совсем так, как работает аутентификация Firebase.

Клиенты аутентификации предоставляют учетные данные для получения токена, который используется для идентификации себя при вызове внутренних служб. Срок действия этих токенов составляет 1 час, и клиент должен обновить его sh, чтобы продолжать использовать его. Ваш бэкэнд не знает и не заботится, есть ли у клиента токен аутентификации, использует ли он его или обновляет sh. Клиенту просто нужно предоставить этот токен с любого устройства, на котором он выполнил вход, чтобы бэкэнд мог его проверить. Ваш сервер не сможет узнать, получил ли клиент токен - вы просто должны его принять. это дано. Это означает, что вам нужно будет на самом деле понять, как передать этот токен и проверить его с помощью Firebase Admin SDK , или использовать функцию вызываемого типа с помощью Firebase Client SDK для отправки этого токена автоматически .

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