Отворен Nodd.js API за четене и изпращане на имейли

Разширен отворен API за управление на имейли в Node.js, който позволява на разработчиците да създават, четат, персонализират и изпращат имейл съобщения с прикачени файлове и персонализиран хедър от Node.js приложения.

Какво е Nodemailer API?

Открийте Nodemailer, съществената библиотека за изпращане на имейли за разработчиците на Node.js. Инструментът дава възможност на разработчиците на Node.js да създават и изпращат имейл съобщения само с няколко реда код от техните приложения. Отвореният код и мощният API я правят популярен избор за разработчиците, които искат безпроблемно да интегрират имейл функционалност. Софтуерните разработчици могат да персонализират съдържанието на имейлите обширно без външна помощ. От прости текстови имейли до сложни HTML шаблони (транзакционни имейли, известия или бюлетини) с прикачени файлове, библиотеката предоставя необходимите инструменти за създаване на професионални и ангажиращи имейли. За повишена сигурност поддържа OAuth2 автентикация. Този метод е особено полезен при изпращане на имейли от услуги, които поддържат OAuth2, като Gmail.

Nodemailer поддържа разнообразие от методи за транспорт, включително SMTP, OAuth2 и дори директен транспорт. Тази гъвкавост осигурява на разработчиците възможността да изберат най‑подходящия метод за конкретния им случай. Той предоставя обширни възможности за персонализиране и позволява на разработчиците да задават персонализирани заглавки, да променят кодировката, да добавят прикачени файлове, вградени изображения и да настройват други параметри, за да отговорят на специфични изисквания. Като проект с отворен код, API‑то се възползва от живо общество от сътрудници и потребители. Това активно общество гарантира редовни актуализации, непрекъснато подобрение и богато споделено знание и ресурси. Nodemailer се отличава като мощно, гъвкаво и надеждно решение за интеграция на имейл в Node.js приложения. Неговата отворена природа и силната подкрепа от общността го правят предпочитан инструмент за разработчиците, които искат да подобрят приложенията си с надеждни възможности за изпращане на имейли.

Previous Next

Започване с Nodemailer

Препоръчителният начин за инсталиране на Nodemailer е чрез NPM. Моля, използвайте следната команда за гладка инсталация.

Инсталирайте Nodemailer чрез npm

npm install nodemailer
 

Изпращане на имейл съобщение от Node.js

Отвореният код Nodemailer email API позволява на софтуерните разработчици да създават и изпращат имейл съобщения от Node.js приложение без външни зависимости. API-тът поддържа различни транспортни механизми, позволявайки на разработчиците да изберат най-добрия метод за изпращане на имейли. Най-често използваните транспортни методи включват SMTP транспорт, поддръжка на OAuth2 или директен транспорт. Той поддържа добавяне на прикачени файлове към имейли, вграждане на изображения за HTML съдържание, изпращане на имейли до множество потребители и др. Ето прост пример, който показва как софтуерните разработчици могат да използват SMTP транспорт за изпращане на имейл съобщение от Node.js приложение.

Как да изпратите имейл съобщение чрез SMTP транспорт от Node.js приложения?

 
const nodemailer = require('nodemailer');

// Configure the SMTP transport
let transporter = nodemailer.createTransport({
    host: 'smtp.example.com',
    port: 587,
    secure: false, // true for 465, false for other ports
    auth: {
        user: 'your-email@example.com', // your SMTP username
        pass: 'your-email-password' // your SMTP password
    }
});

// Define the email options
let mailOptions = {
    from: 'your-email@example.com', // sender address
    to: 'recipient@example.com', // list of receivers
    subject: 'Hello from Nodemailer', // Subject line
    text: 'This is a test email sent using Nodemailer', // plain text body
    html: 'This is a test email sent using Nodemailer' // html body
};

// Send the email
transporter.sendMail(mailOptions, (error, info) => {
    if (error) {
        return console.log('Error: ', error);
    }
    console.log('Message sent: %s', info.messageId);
    console.log('Preview URL: %s', nodemailer.getTestMessageUrl(info));
});
 

Изпращане на имейли с богато съдържание от Node.js приложения

Nodemailer API позволява създаването на богато съдържание за имейли, поддържайки както обикновен текст, така и HTML формати в Node.js приложения. Това позволява на софтуерните разработчици да създават визуално привлекателни имейли, които могат да включват стилизиране, изображения и дори интерактивно съдържание. Чрез използване на API с шаблонни двигатели като Handlebars или EJS, разработчиците могат да създават динамични, базирани на данни шаблони за имейли. Това е перфектно за изпращане на персонализирани съобщения, където съдържанието може да се адаптира според потребителските данни. API‑то поддържа прикачени файлове, което прави възможно изпращането на файлове като PDF‑и, изображения или какъвто и да е друг тип файл заедно с имейла.

Персонализирани заглавки и вградени изображения

За разширено персонализиране на имейлите, Nodemailer API позволява на софтуерните разработчици да включват персонализирани заглавки и вградени изображения в Node.js приложения. Тази функция е особено полезна за брандиране и персонализация, като осигурява имейлите да съответстват на визуалния стил на приложението. Персонализираните заглавки могат да се използват за задаване на специфични метаданни за имейла, докато вградените изображения могат да направят вашия имейл визуално привлекателен, като показват изображенията в текста. По-долу е подробен пример, който демонстрира изпращане на имейл с персонализирани заглавки и вградено изображение.

Как да изпратите имейл с персонализиран заглавен ред и вградено изображение чрез Node.js API?

 
const nodemailer = require('nodemailer');
const path = require('path');

// Create a transporter object using SMTP transport
let transporter = nodemailer.createTransport({
    service: 'gmail',
    auth: {
        user: 'your-email@gmail.com',
        pass: 'your-email-password'
    }
});

// Define the email options, including custom headers and an embedded image
let mailOptions = {
    from: 'your-email@gmail.com',
    to: 'recipient@example.com',
    subject: 'Custom Headers and Embedded Images in Nodemailer',
    html: `

Добре дошли!

Този имейл съдържа персонализирани заглавки и вградено изображение.

`, headers: { 'X-Custom-Header': 'CustomHeaderValue', 'X-Mailer': 'Nodemailer 6.4.11' }, attachments: [ { filename: 'image.jpg', path: path.join(__dirname, 'path_to_image/image.jpg'), cid: 'unique@nodemailer.com' // same cid as in the HTML above } ] }; // Send the email transporter.sendMail(mailOptions, (error, info) => { if (error) { return console.error('Error sending email:', error); } console.log('Email sent successfully:', info.response); });
 Български