API Nodd.js mã nguồn mở cho việc Đọc và Gửi Email

Một API quản lý Email Node.js mã nguồn mở tiên tiến cho phép các nhà phát triển Tạo, Đọc, Tùy chỉnh và Gửi tin nhắn Email với Tệp đính kèm và Header tùy chỉnh từ các ứng dụng Node.js.

Nodemailer API là gì?

Khám phá Nodemailer, thư viện gửi email thiết yếu cho các nhà phát triển Node.js. Công cụ này cho phép các nhà phát triển Node.js tạo và gửi tin nhắn email chỉ với vài dòng mã trong ứng dụng của họ. Tính chất mã nguồn mở và API mạnh mẽ khiến nó trở thành lựa chọn phổ biến cho những người muốn tích hợp chức năng email một cách liền mạch. Các nhà phát triển phần mềm có thể tùy chỉnh nội dung email một cách rộng rãi mà không cần sự trợ giúp bên ngoài. Từ các email văn bản đơn giản đến các mẫu HTML phức tạp (email giao dịch, thông báo hoặc bản tin) kèm tệp đính kèm, thư viện cung cấp các công cụ cần thiết để tạo ra những email chuyên nghiệp và hấp dẫn. Để tăng cường bảo mật, nó hỗ trợ xác thực OAuth2. Phương pháp này đặc biệt hữu ích khi gửi email từ các dịch vụ hỗ trợ OAuth2, chẳng hạn như Gmail.

Nodemailer hỗ trợ nhiều phương thức truyền tải, bao gồm SMTP, OAuth2 và thậm chí truyền tải trực tiếp. Sự linh hoạt này đảm bảo các nhà phát triển có thể chọn phương pháp phù hợp nhất cho trường hợp sử dụng cụ thể của họ. Nó cung cấp các tùy chọn tùy chỉnh rộng rãi và cho phép các nhà phát triển đặt tiêu đề tùy chỉnh, sửa đổi mã hóa, thêm tệp đính kèm, hình ảnh nội tuyến và điều chỉnh các tham số khác để đáp ứng các yêu cầu cụ thể. Là một dự án mã nguồn mở, API được hưởng lợi từ một cộng đồng đóng góp và người dùng sôi động. Cộng đồng hoạt động này đảm bảo cập nhật thường xuyên, cải tiến liên tục và một kho tàng kiến thức và tài nguyên được chia sẻ. Nodemailer nổi bật như một giải pháp mạnh mẽ, linh hoạt và đáng tin cậy cho việc tích hợp email trong các ứng dụng Node.js. Tính chất mã nguồn mở và sự hỗ trợ mạnh mẽ từ cộng đồng khiến nó trở thành công cụ lựa chọn cho các nhà phát triển muốn nâng cao ứng dụng của họ với khả năng gửi email mạnh mẽ.

Previous Next

Bắt đầu với Nodemailer

Cách khuyến nghị để cài đặt Nodemailer là sử dụng NPM. Vui lòng sử dụng lệnh sau để cài đặt một cách suôn sẻ.

Cài đặt Nodemailer qua npm

npm install nodemailer
 

Gửi tin nhắn email từ Node.js

Nodemailer, API email mã nguồn mở, cho phép các nhà phát triển phần mềm tạo và gửi tin nhắn email từ ứng dụng Node.js mà không cần bất kỳ phụ thuộc bên ngoài nào. API hỗ trợ nhiều cơ chế truyền tải khác nhau, cho phép các nhà phát triển chọn phương pháp tốt nhất để gửi email. Các phương pháp truyền tải phổ biến nhất bao gồm SMTP Transport, hỗ trợ OAuth2 hoặc Direct Transport. Nó hỗ trợ thêm tệp đính kèm vào email, nhúng hình ảnh đính kèm cho nội dung HTML, gửi email tới nhiều người dùng, v.v. Dưới đây là một ví dụ đơn giản cho thấy cách các nhà phát triển phần mềm có thể sử dụng SMTP transport để gửi một tin nhắn email từ ứng dụng Node.js.

Cách gửi tin nhắn email qua giao thức SMTP từ các ứng dụng 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));
});
 

Gửi email với nội dung phong phú từ các ứng dụng Node.js

Nodemailer API cho phép tạo nội dung email phong phú, hỗ trợ cả định dạng văn bản thuần và HTML trong các ứng dụng Node.js. Điều này cho phép các nhà phát triển phần mềm tạo ra các email hấp dẫn về mặt hình ảnh, có thể bao gồm kiểu dáng, hình ảnh và thậm chí nội dung tương tác. Bằng cách sử dụng API cùng các công cụ mẫu như Handlebars hoặc EJS, các nhà phát triển có thể tạo các mẫu email động, dựa trên dữ liệu. Điều này rất phù hợp để gửi tin nhắn cá nhân hoá, nơi nội dung có thể thích ứng dựa trên dữ liệu người dùng. API hỗ trợ đính kèm, cho phép gửi các tệp như PDF, hình ảnh hoặc bất kỳ loại tệp nào khác cùng với email.

Tiêu đề tùy chỉnh và hình ảnh nhúng

Đối với việc tùy chỉnh email nâng cao, Nodemailer API cho phép các nhà phát triển phần mềm chèn tiêu đề tùy chỉnh và hình ảnh nhúng trong các ứng dụng Node.js. Tính năng này đặc biệt hữu ích cho việc xây dựng thương hiệu và cá nhân hoá, đảm bảo email phù hợp với giao diện và cảm giác của ứng dụng. Tiêu đề tùy chỉnh có thể được sử dụng để đặt siêu dữ liệu cụ thể cho email, trong khi hình ảnh nhúng có thể làm email của bạn trở nên hấp dẫn hơn bằng cách hiển thị hình ảnh trực tiếp. Dưới đây là một ví dụ toàn diện minh họa cách gửi email với tiêu đề tùy chỉnh và một hình ảnh nhúng.

Cách gửi email với tiêu đề tùy chỉnh và hình ảnh nhúng qua API Node.js?

 
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: `

Chào mừng!

Email này chứa các tiêu đề tùy chỉnh và một hình ảnh nhúng.

`, 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); });
 Tiếng Việt