作者:曾经的诺系列 | 来源:互联网 | 2023-02-08 16:14
我正在尝试在创建用户后发送验证邮件.由于Firebase本身没办法,我正在尝试使用云功能.
我真的找不到很多关于它的文档.我到目前为止尝试做的是:
exports.sendEmailVerification = functions.auth.user().onCreate(event => {
return user.sendEmailVerification()
});
但是我得到了用户未定义的错误.
我该如何创建这个功能?
谢谢!
1> Frank van Pu..:
正如@Alexander回答并评论的那样,只有已登录的用户才能请求发送验证邮件.目前无法通过Cloud Functions使用的Admin SDK执行此操作,因为这很容易被滥用.
如果您希望将此功能添加到Admin SDK,我建议您提交功能请求.
在此期间,您可以使用云功能实施自己的电子邮件验证流程.从用户那里获得验证码后,您可以将其emailVerified
属性设置为true
使用Admin SDK.有关示例,请参阅Firebase文档的此部分.
或者,您也可以通过自己的机制发送电子邮件,但通过生成正确的电子邮件验证链接来使用现有的验证流程
谢谢.这使得Firebase在生产阶段毫无用处.我将提交功能请求,但我还会评估Firebase的替代方案.