8小时后,Nodemailer再次发送邮件

当用户使用以下函数请求新密码时,我正在使用nodemailer模块从节点服务器发送邮件:

function(email, password, callback) { var smtpTransport = nodemailer.createTransport('SMTP', { service: 'Gmail', auth: { user: 'something@gmail.com', pass: 'my_password' } }); var mailOptions = { from: 'My Team<something@gmail.com>', to: email, subject: 'new password', text: 'login with email: ' + email + 'and password: ' + password, html: '<p>login with email: ' + email + ' and password: ' + password + '<br> Visit here to learn more ' + ' <a href=\"www.google.com\">google</a></p>' }; smtpTransport.sendMail(mailOptions, function(err, res) { if(err) { smtpTransport.close(); return callback(err); } else { smtpTransport.close(); return callback(null); } }); }; 

我使用的电子邮件ID是有效的。 用户确实从这个ID获得一个包含一个新生成的随机密码的邮件。 然而,他在8小时之后再次收到一封邮件,其中包含另一个新生成的随机密码。 我不知道如何在服务器端8小时后再次调用这个函数。

我正在使用winstonlogging所有API调用和请求对象中收到的数据。 不过时间戳格式对我来说并不熟悉。 我如何将这个“timestamp”:“2013-09-13T19:39:16.814Z”由winstonlogging到我的当地时间? 同样由于node.js的asynchronous特性,api调用的logging顺序全部被交错和混乱。 如何按照被调用和服务的顺序loggingapi调用?