当用户注册我们的应用程序时,我希望他们知道他们尝试注册的电子邮件是否已经存在,而无需提交表格(电子邮件字段模糊不清的A.K.A)。就目前而言,用户必须输入其详细信息并单击“注册”,然后才能让他们知道是否接收电子邮件。
通过在您输入电子邮件的Spotify注册中可以观察到所需的行为,一旦单击鼠标便会看到以下内容:
到目前为止,我已经编写了一个在模糊时触发的云函数(http),该函数从firestore admin auth调用getUserByEmail
函数。功能如下:
export const checkUserEmail = https.onRequest((req, res) => {
corsHandler(req, res, async () => {
try {
const email = req.body.email;
await admin.auth().getUserByEmail(email);
res.send({status: 200});
return;
} catch(e) {
return Helpers._handleError(res, 400, e.message);
}
})
});
这确实可行,因为现在我现在可以检查是否存在电子邮件,但是问题是验证需要3到10秒之间的时间(足够长的时间让用户更深入地进行注册过程)。
有没有办法做到:
预先感谢
答案 0 :(得分:0)
您可以使用users
集合,您可能已经在这样做了。它可以存储用户信息,并且通常被证明是真正可以处理的,因为auth用户无法使用字段来更新,而字段并不如此。
您可以在此处存储用户的电子邮件,并与此处users
集合的电子邮件字段相比,检查用户输入的集合。