如何在 firebase 中创建必填字段验证
how to create required fields validation in firebase
我的必填字段验证规则似乎在仪表板规则模拟器中有效,但当我真正尝试时,我的权限被拒绝了。我设置正确了吗? (.msg 为消息正文)
{
"rules": {
"messages":{
".read": "auth.uid !== null",
".write": "auth.uid !== null",
".validate": "newData.child('msg').exists()",
"uid": {
".validate": "auth.uid === newData.val()"
}
}
}
}
我也有选择地在 .validate
中尝试过这种语法
".validate": "newData.hasChildren(['msg','uid','uname'])"
这也会为我抛出权限被拒绝的错误。
这是 ios 代码
func sendMessage(text: String!) {
// *** STEP 3: ADD A MESSAGE TO FIREBASE
messagesRef.childByAutoId().setValue([
"msg":text,
"uname":self.senderDisplayName,
"uid":self.senderId
])
}
我只需要将动态消息 ID 添加到 json
{
"rules": {
"messages":{
".read": "auth.uid !== null",
".write": "auth.uid !== null",
"$message_id":{
".validate": "newData.child('msg').exists()",
"uid": {
".validate": "auth.uid === newData.val()"
}
}
}
}
}
我的必填字段验证规则似乎在仪表板规则模拟器中有效,但当我真正尝试时,我的权限被拒绝了。我设置正确了吗? (.msg 为消息正文)
{
"rules": {
"messages":{
".read": "auth.uid !== null",
".write": "auth.uid !== null",
".validate": "newData.child('msg').exists()",
"uid": {
".validate": "auth.uid === newData.val()"
}
}
}
}
我也有选择地在 .validate
中尝试过这种语法".validate": "newData.hasChildren(['msg','uid','uname'])"
这也会为我抛出权限被拒绝的错误。
这是 ios 代码
func sendMessage(text: String!) {
// *** STEP 3: ADD A MESSAGE TO FIREBASE
messagesRef.childByAutoId().setValue([
"msg":text,
"uname":self.senderDisplayName,
"uid":self.senderId
])
}
我只需要将动态消息 ID 添加到 json
{
"rules": {
"messages":{
".read": "auth.uid !== null",
".write": "auth.uid !== null",
"$message_id":{
".validate": "newData.child('msg').exists()",
"uid": {
".validate": "auth.uid === newData.val()"
}
}
}
}
}