javascript - 如何防止 Firebase 实时数据库、Web、JavaScript 的数据重复
问题描述
这是我的用户数据库结构。
如图所示,有2个相同的ID号注册成功。
如何防止“ICNumber”(身份证号)被多次注册?
这是我的实时数据库中的规则:
我尝试放置这段代码,但它似乎不起作用。有什么方法可以在我的 Javascript 中进行预防,或者在我的 Firebase 规则中使用任何正确的方法?
解决方案
在您的代码中,您可以执行以下操作:
// Get a reference to the database service
var database = firebase.database();
var dataRetrieved = database.ref('users').child(userId).orderByChild("ICNumber").equalTo("000326141809");
dataRetrieved.on('value', function(snapshot) {
if(snapshot.exists()){
// do the required
}
});
您可以使用 aquery
检查是否有ICNumber
等于000326141809
,然后使用该方法exists()
检查它是否已在数据库中
推荐阅读
- php - 同一用户 ID 下的多个条目
- amazon-web-services - 如何在 S3 中以最快的方式更改存储类
- python - 用于聊天机器人和安装过程的 Python 库
- ios - Apple RealityKit:如何使用 ModelEntity 绘制多边形平面?
- php - 使用 if 条件检查 Laravel 数据库中的值时出现语法错误
- java - 使用 Servlet 和 JSP 从 PostgreSQL 数据库中检索和显示图像
- reactjs - Redux 表单组件“onSubmitSuccess”单元测试
- algorithm - 得到 x。“线性同余生成器”的值
- javascript - 使用表示大于 Number.MAX_SAFE_INTEGER 的值的字符串调用 parseInt
- python - 如何防止选择第一行作为索引列