2016-07-13 2 views
4

Я ищу, чтобы выбрать Auth User (ы) UID из Firebase через NodeJS или Javascript API. У меня есть скриншот для этого, так что у вас будет идея, что я ищу.Есть ли способ получить идентификатор пользователя Firebase Auth?

enter image description here

Надежда, вы, ребята, помочь мне с этим.

+1

Основываясь на том, что вы хотите получить его? аутентифицированный пользователь? электронная почта пользователя? пожалуйста, подробнее .. – adolfosrs

+0

UID любого пользователя или аутентифицированный? –

+0

В принципе, мне нужно сгенерировать токен из UID 'Firebase.auth(). CreateCustomToken (UID)' для входа пользователя в firebase со следующей функцией 'firebase.auth(). SignInWithCustomToken (токен)'. –

ответ

1

От Firebase документации используйте Firebase.getAuth():

var ref = new Firebase("https://<YOUR-FIREBASE-APP>.firebaseio.com"); 
var authData = ref.getAuth(); 

if (authData) { 
    console.log("Authenticated user with uid:", authData.uid); 
} 

Источник:

+0

Если я попробую, 'authdata.uid' принадлежит к какому пользователю? проблема в том, что мне нужен UID для входа пользователя в firebase и без проверки подлинности, как я могу получить правильный UID. –

+0

Я считаю, что это принадлежит к аутентифицированному пользователю, это легко можно подтвердить против БД .. – Selfish

11

Auth данные асинхронно в Firebase 3. Таким образом, вы должны ждать, а затем у вас есть доступ к текущему идентификатору пользователя. Вы не сможете получить других.

firebase.auth().onAuthStateChanged((user) => { 
    if (user) { 
    console.log(user.uid); 
    } 
}); 

https://firebase.google.com/docs/reference/js/firebase.auth.Auth#onAuthStateChanged

+0

Но мне нужен UID для входа в систему. –

+0

Я не уверен, что вы имеете в виду, это даст вам UID зарегистрированного пользователя. Вы не можете получить UID других. –

+0

Эти методы для меня не срабатывают. –

0

В настоящее время в Firebase консоли, нет никакого прямого API, чтобы получить список пользователей, Auth User (s) UID.
Но внутри вашей базы данных Firebase вы можете поддерживать пользовательский идентификатор пользователя на уровне пользователя. Как указано ниже,

"users": { 
    "user-1": { 
    "uid": "abcd..", 
    .... 
    }, 
    "user-2": { 
    "uid": "abcd..", 
    .... 
    }, 
    "user-3": { 
    "uid": "abcd..", 
    .... 
    } 
} 

Затем вы можете сделать запрос и получить его, когда вам понадобится uid.
Надеюсь, это простое решение может вам помочь!

+0

В принципе, мне нужно сгенерировать токен из UID 'Firebase.auth(). CreateCustomToken (UID)' для входа пользователя в firebase со следующей функцией 'firebase.auth(). SignInWithCustomToken (токен)'. Есть ли другой способ входа пользователя в firebase? –

+0

Firebase упрощает аутентификацию. Он имеет встроенные функции для электронной почты и пароля, а также сторонние поставщики, такие как Facebook, Twitter, GitHub и Google. И с помощью API пользовательской аутентификации Firebase вы можете интегрироваться с уже существующим сервером входа. –

+0

Для получения дополнительной информации перейдите по этим статьям, надеясь, что это вам поможет, [Ссылка-1] (https://www.firebase.com/docs/android/guide/user-auth.html) и [Ссылка-2] (https://firebase.google.com/docs/auth/) –

0

, если пользователь вошел в систему, то console.log напечатает:

if (firebase.auth().currentUser !== null) 
     console.log("user id: " + firebase.auth().currentUser.uid); 
Смежные вопросы