【发布时间】:2016-03-23 13:59:26
【问题描述】:
我正在寻找用于向用户发送电子邮件的节点时间调度程序并找到了这个 cronjob ,但下面似乎不起作用的是我的带有函数调用 API 的代码
我对 node js 很陌生,谁能帮我解决这个“在运行服务器时它不会进入 'app.get' 函数本身。
var cron = require('cron');
var cronJob = cron.job("0 */10 * * * *", function(){
app.get('/email',function(req, res) {
console.log("second")
console.log(req.body.htmltag);
db.collection('UserData', function(err, collection) {
collection.find({},{email:1}).toArray(function(err, items) {
res.send(items);
var transporter = nodemailer.createTransport('smtps://riyas.1012@gmail.com:aslihaabu@3734@smtp.gmail.com');
for(i=0;i<items.length;i++)
{
var mailOptions = {
from: ' <svatsan53@gmail.com>', // sender address
to: items[i].email, // list of receivers
subject: 'Hello ✔', // Subject line
text: 'Hello world ????', // plaintext body
html: req.body.htmltag // html body
};
transporter.sendMail(mailOptions, function(error, info){
if(error){
return console.log(error);
}
console.log('Message sent: ' + info.response);
})
}
});
});
});
});
cronJob.start();
【问题讨论】:
-
Cron 作业 + 事件监听器?删除 HTTP get 的事件侦听器。