__지연된 삭제 요청(예: 5일 후 사용자 프로필 삭제)을 처리하려면 Node.js에서 지연된 작업 예약 접근 방식을 사용하여 이를 수행할 수 있습니다. 단계별 구현은 다음과 같습니다.
접근 방법 1: 백그라운드 작업 스케줄러(예: node-cron 또는 Agenda.js) 사용
node-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()}`, });
} 잡기(오류) {
console.error("예약 삭제 오류:", error);
return res.status(500).json({ 성공: false, 메시지: "내부 서버 오류" });
}
};
위 내용은 Node Cron을 사용하여 Node.js에서 작업을 예약하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!