javascript - tutorial - Firebase Authentication Service: servicio de búsqueda desde el correo electrónico sin iniciar sesión
register with email and password firebase (1)
Estoy construyendo una aplicación usando Firebase, el Servicio de autenticación de Firebase (inicio de sesión simple de correo electrónico / contraseña) y el almacenamiento de la información del usuario de una manera bastante similar a la que se describe aquí .
Parte de mi funcionalidad deberá permitir buscar a otro usuario en función de una dirección de correo electrónico.
¿Existe alguna forma sencilla de usar un correo electrónico para buscar el uid definido por Firebase (es decir, ''simpleLogin: 9'') sin tener que iterar sobre todos los usuarios o poder iniciar sesión realmente?
Su nodo de users
es solo un nodo regular en Firebase. Entonces, la única forma de buscar elementos es por el nombre del nodo o por la prioridad del nodo.
Si desea seguir usando el uid
como nombre de nodo, puede establecer la dirección de correo electrónico como prioridad usando setPriority
o setWithPriority
y luego filtrar usando startAt
y endAt
.
// save new user''s profile into Firebase so we can
// list users, use them in security rules, and show profiles
myRef.child(''users'').child(user.uid).setWithPriority({
displayName: user.displayName,
provider: user.provider,
provider_id: user.id
}, user.email);
var userRef = myRef.child(''users'').startAt(user.email).endAt(user.email);
Pero si solo está usando un simple correo electrónico, puede considerar simplemente almacenar a los usuarios por su dirección de correo electrónico para comenzar:
myRef.child(''users'').child(user.email).set({
displayName: user.displayName,
provider: user.provider,
provider_id: user.id
});
var userRef = myRef.child(''users'').child(user.email);
Ver también:
- Consultas de estilo de base de datos con Firebase
- Cómo consultar a firebase por la propiedad con valor específico dentro de todos los niños
- Los mejores resultados de Google "Firebase where query".