__Untuk mengendalikan permintaan pemadaman tertunda (cth., memadamkan profil pengguna selepas 5 hari), anda boleh mencapai ini dalam Node.js menggunakan pendekatan penjadualan tugas tertunda. Berikut ialah pelaksanaan langkah demi langkah:
Pendekatan 1: Menggunakan Penjadual Tugas Latar Belakang (cth., node-cron atau Agenda.js)
Contoh dengan nod-cron:
exports.deleteProfile = tak segerak (req, res) => {
cuba {
const { userId } = req.body;
// Validate input if (!userId) { return res.status(400).json({ success: false, message: "User ID is required" }); } // Find user to ensure existence const user = await User.findById(userId); if (!user) { return res.status(404).json({ success: false, message: "User not found" }); } // Schedule deletion after 5 days const deletionDate = new Date(); deletionDate.setDate(deletionDate.getDate() + 5); cron.schedule(deletionDate.toISOString(), async () => { await User.findByIdAndDelete(userId); console.log(`User with ID ${userId} deleted successfully.`); }); return res.status(200).json({ success: true, message: `User deletion scheduled for ${deletionDate.toISOString()}`, });
} tangkapan (ralat) {
console.error("Ralat pemadaman penjadualan:", ralat);
return res.status(500).json({ success: false, message: "Internal Server Error" });
}
};
Atas ialah kandungan terperinci Bagaimana untuk mengalihkan tugas dalam Node.js menggunakan Node Cron. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!