Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Boleh Mengautomasikan Pemadaman Data Lebih Lama Daripada Dua Jam dalam Firebase?
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!