Привет! Программная отправка электронных писем — распространенная задача в веб-разработке, и одной из популярных библиотек для достижения этой цели в Node.js является Nodemailer. В этом сообщении блога я познакомлю вас с несколькими методами и предоставлю фрагменты кода, которые можно использовать повторно, которые помогут вам стать профессионалом в использовании Nodemailer.
-
Настройка Nodemailer
Для начала вам необходимо установить Nodemailer, запустивnpm install nodemailer. После установки вы можете потребовать его в своем коде следующим образом:const nodemailer = require('nodemailer'); -
Настройка транспорта электронной почты
Nodemailer поддерживает различные методы транспорта для отправки электронных писем. Одним из широко используемых методов является SMTP (простой протокол передачи почты). Вот пример настройки транспорта SMTP:const transporter = nodemailer.createTransport({ host: 'smtp.example.com', port: 587, secure: false, auth: { user: 'your-email@example.com', pass: 'your-password' } }); -
Отправка электронных писем в виде обычного текста
Чтобы отправить простое текстовое электронное письмо, вы можете использовать методsendMail, предоставляемый Nodemailer:const mailOptions = { from: 'your-email@example.com', to: 'recipient@example.com', subject: 'Hello from Nodemailer', text: 'This is the content of the email.' }; transporter.sendMail(mailOptions, (error, info) => { if (error) { console.log(error); } else { console.log('Email sent: ' + info.response); } }); -
Отправка электронных писем в формате HTML
Nodemailer также позволяет отправлять электронные письма в формате HTML. Просто укажите HTML-содержимое в свойствеhtmlобъектаmailOptions:const mailOptions = { from: 'your-email@example.com', to: 'recipient@example.com', subject: 'Hello from Nodemailer', html: '<h1>This is the content of the email.</h1>' }; -
Отправка электронных писем с вложениями
Если вам нужно отправить вложения к электронной почте, Nodemailer сделает это легко. Вы можете указать вложения как массив объектов в свойствеattachmentsобъектаmailOptions:const mailOptions = { from: 'your-email@example.com', to: 'recipient@example.com', subject: 'Email with Attachment', text: 'Check out this attachment!', attachments: [ { filename: 'report.pdf', path: '/path/to/report.pdf' } ] }; -
Проверка электронной почты
Перед отправкой электронного письма рекомендуется проверить адреса электронной почты. Nodemailer предоставляет встроенный метод проверки адреса электронной почты:const isValidEmail = nodemailer.validateEmail('recipient@example.com'); console.log('Is valid email?', isValidEmail);
Это всего лишь несколько примеров того, что вы можете сделать с Nodemailer. Библиотека предлагает множество дополнительных функций и возможностей для настройки процесса отправки электронной почты. Дополнительную информацию можно найти в документации Nodemailer.
Надеюсь, эта статья поможет вам освоить Nodemailer и отправлять электронные письма профессионально!