有什么方法可以检查用户是否存在于firebase位置?你会以某种方式使用.child()
吗?变量将存储输入的用户名:
用户名:
var user = "test";
firebase返回对象:
snapshot { '
-JruhOP3M496hEAKn6':
{
email: 'chaselester.cl@gmail.com',
password: 'kimberlyn#1',
username: 'chipe'
},
'-Ju8J72xo3UpSIwEYw': {
email: 'test',
password: 'test',
username: 'test' },
'-Ju8J9m_DC18irjWep': {
email: 'one',
password: 'three',
username: 'two'
}
}
似乎用户不存在firebaseRef.push
调用firebaseRef.orderByChild
并且整个函数再次运行,因为在日志中它记录"用户不存在"然后就在它记录后#34; User Exists"并且我的res.json被调用两次,我的应用程序崩溃了注释"发送后不能设置标题"。如果用户不存在而没有重新评估firebaseRef.orderByChild
?
这是我在server.js中所做的全部功能:
firebaseRef.orderByChild('username').equalTo(user).on('value', function(snapshot) {
if (snapshot.hasChildren()) {
console.log('User exists');
res.json(true);
}else if(!snapshot.hasChildren()){
console.log('User does not exist');
firebaseRef.push(req.body);
res.json(false);
}
});