提问者:小点点

当日期到期nodejs[关闭]时如何通过邮件发送预警


目前,我正在一个项目的调度程序应用程序,我被卡在一个特定的部分,我必须发送一封邮件时,在当前的日期技术,我在这个项目中使用的是ejs,nodejs,MongoDB。


共1个答案

匿名用户

这里有一个简单的方法来做到这一点。

首先,编写一个sendOne()函数来做这些事情。

  1. 查询mongodb,只找到一条必须立即发送电子邮件的记录,并且该记录没有正确激活电子邮件(请参见步骤3)
  2. 如果未找到记录,则返回false
  3. 将该记录标记为MongoDB中的活动电子邮件。
  4. 使用NodeMailer发送电子邮件。
  5. 发送完电子邮件后,从MongoDB中删除电子邮件活动属性
  6. 返回true.

然后,编写另一个函数来执行此操作:

function sendAll () {
  while (true) {
    if (!sendOne()) break
  }
}

它反复调用您的第一个函数,直到它发现没有更多的电子邮件准备发送。

然后使用setInterval每五分钟调用一次sendAll,或每小时调用一次,或每天调用一次,或以您的应用程序的适当间隔调用一次。

这种方法为您提供了一种测试sendOne()函数的好方法。