Skip to content

Instantly share code, notes, and snippets.

@dascenciohz
Created October 23, 2019 22:44
Show Gist options
  • Save dascenciohz/f844c0553e42b7473d380c9435981a93 to your computer and use it in GitHub Desktop.
Save dascenciohz/f844c0553e42b7473d380c9435981a93 to your computer and use it in GitHub Desktop.
Node Mailer Tester. Depend nodemailer package
"use strict";
const nodemailer = require("nodemailer");
// async..await is not allowed in global scope, must use a wrapper
async function main(){
// Generate test SMTP service account from ethereal.email
// Only needed if you don't have a real mail account for testing
let testAccount = await nodemailer.createTestAccount();
// create reusable transporter object using the default SMTP trasport
let transporter = nodemailer.createTransport({
host: "mail.server.com",
port: 25,
secure: false,
auth: {
user: "myuser",
pass: "mypassword"
},
tls: {
rejectUnauthorized: false
}
});
// send mail with defined transport object
let info = await transporter.sendMail({
from: '"Myname" <myaccount@mydomain.com>',
to: "mailto@domain.com",
subject: "Hello Domain",
text: "Hello Domain",
html: "<b>Hello Domain</b>"
});
console.log("Message sent: %s", info.messageId);
// Preview only available when sending through an Ethereal account
console.log("Preview URL: %s", nodemailer.getTestMessageUrl(info));
}
main().catch(console.error);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment