收到验证邮件后,我立即点击了验证链接,但答案仍然只有:
再次尝试验证电子邮件。验证电子邮件的请求已过期或链接已被使用
用于发送验证邮件的当前代码如下所示,并在注册后立即运行。
firebase.auth().onAuthStateChanged(function(user) {
user.sendEmailVerification();
});
所需的firebase脚本如下所示:
<script src="https://www.gstatic.com/firebasejs/3.6.1/firebase.js"></script>
<script>
function init(){
var config = {
apiKey: "<asdf>",
authDomain: "<asdf>.firebaseapp.com",
databaseURL: "<asdf>.firebaseio.com"
};
firebase.initializeApp(config);
}
</script>
<script src="https://www.gstatic.com/firebasejs/3.6.1/firebase-app.js"></script>
<script src="https://www.gstatic.com/firebasejs/3.6.1/firebase-auth.js"></script>
<script src="https://www.gstatic.com/firebasejs/3.6.1/firebase-database.js"></script>
并且启用电子邮件/密码作为登录方法。我将该设置与另一个Firebase项目进行了比较,该项目有工作验证邮件,但没有发现差异。
任何人都知道可能是什么问题?
确保您的登录提供商有电子邮件和密码提供商
如果您有多个APIKey,您可能需要检查此项。
我有多把钥匙。我将它们分别用于不同的客户端应用程序。
如其他答案中所述,电子邮件验证链接包括一个apiKey。在我的例子中,apiKey与我用于特定客户端应用程序的apiKey不同。
因此,解决方案是找出在电子邮件验证中发送的apiKey并添加
我浪费了几个小时,它毁了我给客户的演示。希望此解决方案可以节省其他人的时间和$
很明显,错误消息非常模糊。这里的任何答案都可能会引导您找到解决方案。所以,耐心点,喝杯咖啡,看看哪一种适合你的情况。我说这些都是因为我已经精疲力竭了好几个小时,希望你不必这么做。
总结:
如果您有多个 apiKey,并且您正在使用 HTTP 引用执行应用程序限制,请确保
答案就在这里:stackoverflow.com/a/38274531/213156 非常感谢,特拉维斯·克里斯蒂安!
如果您在 Google API 控制台中列出了应用 API 密钥的任何 HTTP 引荐来源网址,则需要包含电子邮件来源的应用本身:[app-name].firebaseapp.com。否则,此域对于应用的密钥无效。
我正在试验Cognito,但我似乎不知道如何让Cognito向用户发送验证电子邮件,让他们验证他们的电子邮件地址。 这是在我的后端服务器中,我从新用户那里收到了用户名、电子邮件和密码。我正在抑制消息操作,因为我不希望用户收到临时密码。相反,我想将密码设置为他们已经提供给我的密码。 然而,用户从未收到验证其电子邮件地址的电子邮件。在用户池配置中,我在“要验证哪些属性”下选择了“电子邮件”我已经在SE
如何使用firebase中的验证电子邮件验证使用电子邮件和密码登录的用户?这背后的逻辑是如何工作的,它在代码中会是什么样子? 解决方案/帮助:对于那些仍在寻找答案的人,我找到了这篇文章 堆栈溢出 帖子
我正在构建一个 Firebase 应用,并且刚刚实施了电子邮件验证流程。但是,我认为如果验证电子邮件不会过期,这可能是一个问题。这样,用户只需使用随机电子邮件地址注册而不对其进行验证,这意味着具有该电子邮件地址的真实人员无法再注册(firebase.auth().createUserWithEmailAndPassword将仅在“身份验证”选项卡中创建此用户,并且该电子邮件地址无法再使用)。有没有
我能够在注册前验证用户电子邮件。但我想收到验证电子邮件到我的电子邮件地址以完成注册过程。我想收到我的电子邮件地址的通知,并且只有在我批准后才完成注册过程。我检查了电子邮件验证:auth-service.ts 注册:
当我注册一个用户,或单击“单击此处请求另一个”时,不会发送验证邮件,尽管它的回答是“一个新的验证链接已发送到您的电子邮件地址”。我检查了我的和文件,并使用tinker和
我有一个关于firebase电子邮件验证工作的问题。 案例: 我的用户已登录我的网站(使用设备A)。 他们使用其他浏览器或设备(设备B)创建另一个帐户,但他们使用他已登录的浏览器和设备(设备A)打开电子邮件验证链接。 已经登录的用户(在设备A中)发生了什么?firebase是将它们签出还是只是验证新的电子邮件,但仍然与当前用户签入?