这是我之前的问题的后续跟进。我正在尝试查看是否已使用过电子邮件。
我正在使用
行if snapshot.hasChild(email) {
我的数据库中有一封电子邮件test1@test.com 当我输入那个...时,我会进入'。'在此之前,应用程序崩溃并发出错误,说明了这个
Must be a non-empty string and not contain '.' '#' '$' '[' or ']'
我看到很多关于检查用户名的帖子,但我的应用没有用户名,只有电子邮件。我可以使用
的电子邮件吗?hasChild(...) {...
答案 0 :(得分:3)
Firebase密钥不能包含.
(点)字符。如果要在密钥中存储电子邮件地址,则必须对其进行编码。常见的方法是将.
替换为,
(逗号),这在电子邮件地址中是不允许的。因此test1@test.com
将被编码为test1@test,com
。
我认为您实际上并未将电子邮件地址存储为密钥,但我会在your previous question上对此进行跟进。