Tengo un problema con mi API. Quiero usar Firestore para ingresar datos para iniciar sesión y registrarme con APi. Luego, cuando quiero agregar la base de datos de documentos con el correo electrónico de entrada del usuario cuando me registro, pero el resultado es un error. mis razones para agregar un documento con el correo electrónico del usuario son para facilitar el siguiente paso de inicio de sesión para su validación para comparar la contraseña y el correo electrónico. aquí el código que ya hice:
const functions = require("firebase-functions"); const express = require("express"); // eslint-disable-next-line no-unused-vars const cors = require("cors"); const admin = require("firebase-admin"); admin.initializeApp(); const app = express(); const db = admin.firestore(); app.post("/Register", (req, res) => { const { name, email, password, phone, } = req.body; const saldo = 0; const valAcc = db.collection("Users").doc(email); valAcc.get().then((doc) => { if (doc.exists) { res.status(409).send("User Already Exist!"); } }); db.collection("Users").doc(email).add({ Name: name, Email: email, Password: password, Phone: phone, Saldo: saldo, }); res.status(201).send(); }); exports.apptest = functions.https.onRequest(app);
¿Tienen alguna solución? rly appriciate para cualquier ayuda.
No recomiendo manejar la autenticación de usuario usted mismo. Recomiendo usar la herramienta integrada de Firebase para esto en su lugar: Autenticación de Firebase
Con esto, es fácil implementar el inicio de sesión de correo electrónico/contraseñas o proveedores (google, facebook, etc.).
Y probablemente sea mucho más seguro que hacerlo desde cero.
Luego, puede usar el UID o el correo electrónico del usuario registrado para almacenar/recuperar datos en Firestore.