Ich habe eine Live-Datenbank mit folgender Struktur:
"keys" : "randomUserId1" : "randomKey1" : timestamp1 "randomUserId2" : "randomKey2" : timestamp2 "randomKey3" : timestamp3 "randomUserId3" : "randomKey4" : timestamp4
Der Zeitstempelwert ist die Erstellungszeit in Millisekunden. Ich möchte jetzt Firebase-Funktionen und Javascript verwenden, um alle Schlüssel zu löschen, deren Zeitstempel zu alt ist. Das Timing ist nicht so wichtig, daher kann die Löschfunktion bei einem geeigneten Schreibvorgang an einer anderen Stelle in der Datenbank ausgelöst werden.
Ich habe versucht, die Beispielmethode zu ändern, um alte untergeordnete Knoten zu löschen, konnte aber nicht verstehen, wie das mit der oben genannten Datenbankstruktur funktioniert.
Wie schreibe ich eine js-Funktion, um die oben genannten Aufgaben auszuführen?
Ich könnte natürlich unterhalb von „randomKey“ ein Schlüssel/Wert-Paar („timestamp“: timestamp) hinzufügen, wenn das die Sache einfacher machen würde.
Firebase 函数(并使用
firebase-sdk
)删除时间戳早于阈值的键:您提供的链接基于我对删除早于2小时
要使其在您的数据结构上工作,您可以使用
orderByValue()
而不是orderByChild("timestamp")
。所以:要了解相关详情,请参阅 上的 Firebase 文档排序和过滤数据。