Mengautomasikan Pembersihan Data dalam Firebase
Untuk memadamkan data Firebase yang lebih lama daripada dua jam dengan cekap, pertimbangkan pendekatan berikut:
Batasan Firebase:
Firebase tidak menawarkan pertanyaan dengan parameter dinamik seperti "dua jam yang lalu." Walau bagaimanapun, ia boleh melaksanakan pertanyaan untuk nilai tertentu, seperti "selepas cap masa tertentu."
Pemadaman Berdasarkan Masa:
Laksanakan coretan kod yang dilaksanakan secara berkala untuk padamkan data yang lebih lama daripada dua jam pada masa itu masa.
var ref = firebase.database().ref('/path/to/items/'); var now = Date.now(); var cutoff = now - 2 * 60 * 60 * 1000; var old = ref.orderByChild('timestamp').endAt(cutoff).limitToLast(1); var listener = old.on('child_added', function(snapshot) { snapshot.ref.remove(); });
Butiran Pelaksanaan:
Fungsi Cloud untuk Firebase:
Jika anda mahu kod ini dijalankan secara berkala di latar belakang, anda boleh menggunakan Cloud Functions untuk Firebase:
exports.deleteOldItems = functions.database.ref('/path/to/items/{pushId}') .onWrite((change, context) => { var ref = change.after.ref.parent; var now = Date.now(); var cutoff = now - 2 * 60 * 60 * 1000; var oldItemsQuery = ref.orderByChild('timestamp').endAt(cutoff); return oldItemsQuery.once('value', function(snapshot) { var updates = {}; snapshot.forEach(function(child) { updates[child.key] = null; }); return ref.update(updates); }); });
Nota:
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengautomasikan Pemadaman Data Lebih Lama Daripada Dua Jam dalam Firebase?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!