Я хочу реализовать правило для чтения данных за последние, скажем, 5 или 10 минут.Моя база данных выглядит так:
.
Я хочу разрешить пользователю читать сообщения за последние 10 минут, но правило не работает, и я не могу заставить его работать. Я пробовал разные правила, как это.
"Messages": {
"$messagekey": {
"$key": {
".read":"root.child('Users/Messages/'+$messagekey+'/'+$key+'/messageTime').val()> (now - 600000000)", }
},
".write":"auth!=null"
}
И это также
"Messages": {
"$messagekey": {
"$key": {
".read": "data.child('messageTime').val() > (now - 600000)"
}
},
".write": "auth!=null"
}
Любая помощь или предложения, пожалуйста.Сообщение об ошибке
Редактировать 2 Используя это правило, я все еще не могу заставить его работать
{
"rules": {
"Messages": {
"$messagekey": {
"$key": {
".read": "data.child('messageTime').val() > (now - 90000000)"
}
},
".write": "auth!=null"
}
}
}
и вот мои данные
Users
Messages
WZTDdZslJrMFqgDLNWo4jXehsF02_nUVrJthSqHXH8Ur0stRz2tihxdg1
-LPFPTBx7BA6urp-CSbZ
messageText: "Hello"
messageTime: 1540059028779
messageUser: "Joker's Grin"
messageUserId: "WZTDdZslJrMFqgDLNWo4jXehsF02"
-LPFPUB5efDAIVu_AxP0
messageText: "how are you"
messageTime: 1540059028779
messageUser: "Crazy Eights"
messageUserId:"nUVrJthSqHXH8Ur0stRz2tihxdg1"
Я использую две подстановочные знаки " messagekey " и " key " для достижения messageId.Также пробовал эти правила, а также ни одна из этих работ, кроме чтения: true.
".read": "data.child('messageTime').val() >0"
".read": "data.child('messageTime').val() !==null"
".read": "data.exists()"
".read": "data.hasChild('MessageId')"
Вот скриншоты