首頁 > web前端 > js教程 > 使用 Node.js 安排刪除過程的一種方法

使用 Node.js 安排刪除過程的一種方法

DDD
發布: 2024-12-30 07:19:09
原創
334 人瀏覽過

One way to shedule deletion process using Node.js

安裝節點 cron 套件

npm install node-cron

預定刪除程式碼

const cron = require("node-cron");
const User = require("../models/User"); // Assume `User` is your Mongoose model

exports.deleteProfile = async (req,res) => {
  try{
   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(error){
   console.error("Error scheduling deletion:", error);
    return res.status(500).json({ success: false, message: "Internal Server Error" });
}

登入後複製

以上是使用 Node.js 安排刪除過程的一種方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:dev.to
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板