Отправка письма в Node.JS с помощью Nodemailer

Nodemailer - один из лучших моделей для отправки почты в Node.JS. На момент написания данной статьи репозитарий Github насчитывает более 11 тысяч звезд, это значит что большое количество разработчиков использует данную библиотеку, при этом количество открытых issues не превыешает 10.

Описанный ниже пример приведен для Nodemailer версии 2.2.2.2.2.2

Для начала работы, необходимо установить Nodemailer

с помощью npm

npm install --save nodemailer

либо с помощью yarn

yarn add nodemailer

После установки необходимо добавить код в вашу программу

const nodemailer = require('nodemailer');

Далее, для работы, нужно создать специальный объект, который и будет отправлять письма, с заданными настройками

var transporter = nodemailer.createTransport({ 'host': 'smtp.ethereal.email', 'port': 587, 'secure': false, 'auth': { 'user': 'account', 'pass': 'password', }, });

А для поплуярных почтовых сервисов существует более короткая запись, для примера возьмем сервис gmail.com

var transporter = nodemailer.createTransport({ 'service': 'gmail', 'auth': { 'user': 'youremail@address.com', 'pass': 'yourpassword', }, });

Список прочих сервисов можно посмотреть по ссылке https://nodemailer.com/smtp/well-known/

Теперь необходимо определить объект с настройками для отправки конкретного письма

const mailOptions = { 'from': 'sender@email.com', 'to': 'to@email.com', 'subject': 'Subject of your email', 'html': '

Your html here

', };

И собственно теперь можем отправить письмо

transporter.sendMail(mailOptions, function (error, info) { if (error) { console.error(error); } else { console.log(info); } });

Таким несложным способом можно отравлять электронные письма, используя Node.JS & Nodemailer.

Ссылка на github где можно найти работающий пример

© 2008-2019 Spider13 Software