__要处理延迟删除请求(例如,5 天后删除用户配置文件),您可以在 Node.js 中使用延迟任务调度方法来实现此目的。以下是分步实施:
方法 1:使用后台任务调度程序(例如,node-cron 或 Agenda.js)
节点 cron 示例:
exports.deleteProfile = async (req, res) =>; {
尝试{
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()}`, });
} catch(错误){
console.error("计划删除时出错:", error);
return res.status(500).json({ success: false, message: "内部服务器错误" });
}
};
以上是如何使用 Node Cron 在 Node.js 中安排任务的详细内容。更多信息请关注PHP中文网其他相关文章!