我想用户之间共享安全数据。
"shared_requests" : {
"shared_uid" : {
"deviceSeriNo" : "device1serino",
"user1" : {
"email" : "john@john.com",
"userName" : "John"
},
"user2" : {
"email" : "micheal@micheal.com",
"userName" : "Micheal"
}
}
}
规则:(编辑,我忘了写一小部分(auth.uid.email.replace( '@', ' ').replace(' '''))。)
"shared_requests": {
"$key": {
".read": "root.child('shared_requests').child($key).child('user1/email').val() == auth.uid.email.replace('@','_').replace('.','_') || root.child('shared_requests').child($key).child('user2/email').val() == auth.uid.email.replace('@','_').replace('.','_')",
".write": "root.child('shared_requests').child($key).child('user1/email').val() == auth.uid.email.replace('@','_').replace('.','_') || root.child('shared_requests').child($key).child('user2/email').val() == auth.uid.email.replace('@','_').replace('.','_')"
}
}
但不工作。 我怎么解决这个问题?
编辑:
它的工作原理,当我尝试用UID。
"shared_req4": {
"shared_uid": {
"$key": {
".read": "auth != null && auth.uid === $key",
".write": "auth != null && auth.uid === $key"
}
}
}
数据:
模拟器:
仿真结果:
但是,当我尝试它通过电子邮件不起作用。
"shared_req3": {
"shared_uid": {
"$key": {
".read": "auth != null && auth.uid.email.replace('@','_').replace('.','_') === $key",
".write": "auth != null && auth.uid === $key"
}
}
}
数据:
模拟器:
仿真结果: