【发布时间】:2021-04-28 18:48:56
【问题描述】:
这可能是一个完全愚蠢的问题,但我有一个非常简单的 node.js 测试应用程序,它每 3 分钟发送一封电子邮件(毫无意义,但仅用于学习目的)。该应用程序有效,但只有在我访问端口:3000 时才能运行 - 我明白为什么,因为那是侦听器所在的位置,但我如何在不必访问端口的情况下执行电子邮件代码?还是我误解了它的工作原理?下面的代码 - 感谢任何帮助????
const http = require('http');
const nodemailer = require('nodemailer');
let app = http.createServer((req, res) => {
const init = async () => {
const email = async () => {
let transport = nodemailer.createTransport({
host: "smtp.mailtrap.io",
port: 2525,
auth: {
user: "user",
pass: "pass"
}
});
const message = {
from: 'nodeapp.test.com', // Sender address
to: 'to@email.com', // List of recipients
subject: 'Test Email', // Subject line
text: 'Testing testing 123' // Plain text body
};
let info = await transport.sendMail(message, function(err, email) {
if (err) {
console.log(err)
} else {
console.log(email);
}
});
}
email()
setInterval(email, 180000)
}
init()
})
app.listen(process.env.PORT || 3000, () => {
console.log('Server running at http://127.0.0.1:3000/')
})
【问题讨论】:
标签: node.js port nodemailer