Как мне вернуть список пользователей, если я использую простую аутентификацию по имени пользователя и паролю в Firebase?

Не уверен, что я делаю что-то не так, но с помощью этого API https://www.firebase.com/docs/security/simple-login-email-password.html Я могу успешно создать пользователя - согласно ответному сообщению, но я не вижу этого пользователя нигде в консоли Forge. Откуда вы знаете, какие пользователи зарегистрированы?

Должен ли я взять идентификатор возвращаемого пользователя и создать свой собственный объект пользователя в Firebase, или это дублирование не нужно. Мне нужно добавить некоторые дополнительные пользовательские свойства, так что, в любом случае, мне нужно будет это сделать.

57
задан 21 June 2016 в 16:18

2 ответа

Возможно использовать облачную функцию для выборки пользовательского списка (документы представления в firebase). Отметьте в следующем примере пользовательские требования , функция используется, чтобы проверить, есть ли у пользователя достаточно полномочий.

// USERS: return full users list for admin
// >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
import * as admin from 'firebase-admin'
import * as functions from 'firebase-functions'

export const listUsers = functions.https.onCall((data, context) => {
  // check if user is admin (true "admin" custom claim), return error if not
  const isAdmin = context.auth.token.admin === true
  if (!isAdmin) {
    return { error: `Unauthorized.` }
  }

  return admin
    .auth()
    .listUsers()
    .then((listUsersResult) => {
      // go through users array, and deconstruct user objects down to required fields
      const result = listUsersResult.users.map((user) => {
        const { uid, email, photoURL, displayName, disabled } = user
        return { uid, email, photoURL, displayName, disabled }
      })

      return { result }
    })
    .catch((error) => {
      return { error: 'Error listing users' }
    })
})
0
ответ дан 1 November 2019 в 16:53

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

, можно также использовать совместно использованный prefernces для сохранения данных локально, но это не сможет для другого пользователя.

, после того как Вы сохраняете список пользователя в базе данных просто, получают его оттуда использование адаптеров

FirebaseDatabase.getInstance().getReference().child("my_user")
                        .child(task.getResult().getUser().getUid())
                        .child("username").setValue(autoCompleteTextView1.getText().toString());
0
ответ дан 1 November 2019 в 16:53

Другие вопросы по тегам:

Похожие вопросы: