Javascript 如何验证react native和firebase中是否已存在用户名?
这是我代码的一部分。。。我想检查firebase中的数据库中是否已经存在用户名Javascript 如何验证react native和firebase中是否已存在用户名?,javascript,firebase,react-native,Javascript,Firebase,React Native,这是我代码的一部分。。。我想检查firebase中的数据库中是否已经存在用户名 try { await firebase.auth().createUserWithEmailAndPassword(user.email, user.password); const uid = Firebase.getCurrentUser().uid; let profilePhotoUrl = "default
try {
await firebase.auth().createUserWithEmailAndPassword(user.email, user.password);
const uid = Firebase.getCurrentUser().uid;
let profilePhotoUrl = "default";
await db.collection("users").doc(uid).set({
username: user.username,
email: user.email,
profilePhotoUrl
})
code............
},```
Firebase将为您处理条目的复制
await firebase.auth()
.createUserWithEmailAndPassword('jane.doe@example.com', 'SuperSecretPassword!')
.then(() => {
console.log('User account created & signed in!');
})
.catch(error => {
if (error.code === 'auth/email-already-in-use') {
console.log('That email address is already in use!');
}
if (error.code === 'auth/invalid-email') {
console.log('That email address is invalid!');
}
console.error(error);
});
如果我想验证用户名?我怎么做?我不明白你的问题@CookieDeveloper,请详细说明。如果你想检查用户名,那么你需要查询firestore数据库,以检查是否存在具有该用户名的用户,因为你似乎正在将其写入“用户”集合。OP询问Firebase中的重复数据(他们称之为“用户名”)这与重复的用户身份验证无关,重复的用户身份验证就是这个答案所要解决的。是的,如果有人知道我如何做到这一点,请告诉我,谢谢。你会对此有点困惑。如果数据库不允许读取数据,除非用户经过身份验证,则无法查询重复的用户名。因此,唯一的选择是创建一个只包含用户名的公共可读节点,因此在尝试创建具有特定用户名的用户之前,您可以检查它。否则,您可以允许用户创建其帐户,然后选择用户名。这样至少可以对其进行身份验证,这样您就可以防止用户节点被公开访问。