0
本來共享數據,我有以下設置:實時值聽衆在火力地堡
folder:{
uid1:{
f1:{}
f2:{}
}
}
,我能夠通過收聽該uid的值:
ref('/folder/uid').on('value', functon ....
的安全規則可以簡單地這樣的:
"folders": {
"$uid": {
".read": "auth != null && auth.uid == $uid",
".write": "auth != null && auth.uid == $uid"
}
},
但現在我要做的文件夾共享和規劃做了如下:
user:{
uid1:{
folderAccessRight:{
read: {fid1:true}
write: {fid1:true}
}
}
}
folder:{
fid1:{}
fid2:{}
}
安全規則可以設置爲檢查$ FID用戶的folderAccessRight JSON存在。但是,由於安全規則不能作爲過濾器,我不能再聽頂層文件夾ref('/ folder')。
如果我在不同的文件夾和用戶添加一個單獨的值聽者具有N個文件夾,我需要Ñ聽衆。
問題:具有多個監聽
- 就會損害性能?
- 有沒有更好的辦法來組織數據&實時收聽數據?
我開始寫一個答案(我現在把它留作存根),然後意識到我不太瞭解你的數據模型。你可以展示一個操作,你在執行時遇到問題嗎? –
只要你保持合理的數字,擁有多個聽衆並不是問題。什麼是合理的取決於你的應用程序,但一般來說:只聽取屏幕上顯示的數據。另見http://stackoverflow.com/q/37635733/,http://stackoverflow.com/q/24558317/ –
@FrankvanPuffelen我還沒有開始轉換,但我的代碼仍然在做原始的東西:在ref'folder/uid1',我只是在探索如何在不同的用戶之間共享數據。謝謝您的回答。 – nlgn