1. Produk
  2.   E-mel
  3.   Node.js
  4.   Nodemailer
 
  

API Sumber Terbuka Nodd.js untuk Membaca & Menghantar E-mel

API Pengurusan E-mel Node.js Sumber Terbuka yang Canggih membolehkan Pembangun untuk Mencipta, Membaca, Menyesuaikan dan Menghantar Mesej E-mel dengan Lampiran & Header Tersuai dari Aplikasi Node.js.

Apakah API Nodemailer?

Temui Nodemailer, perpustakaan penting untuk menghantar e-mel bagi pembangun Node.js. Alat ini memberi kuasa kepada pembangun Node.js untuk mencipta dan menghantar mesej e-mel dengan hanya beberapa baris kod dari dalam aplikasi mereka. Sifat sumber terbukanya dan API yang kukuh menjadikannya pilihan popular bagi pembangun yang ingin mengintegrasikan fungsi e-mel dengan lancar. Pembangun perisian boleh menyesuaikan kandungan e-mel secara meluas tanpa bantuan luar. Dari e-mel teks ringkas hingga templat HTML yang kompleks (e-mel transaksi, pemberitahuan, atau buletin) dengan lampiran, perpustakaan ini menyediakan alat yang diperlukan untuk mencipta e-mel profesional dan menarik. Untuk keselamatan yang dipertingkat, ia menyokong pengesahan OAuth2. Kaedah ini sangat berguna apabila menghantar e-mel daripada perkhidmatan yang menyokong OAuth2, seperti Gmail.

Nodemailer menyokong pelbagai kaedah penghantaran, termasuk SMTP, OAuth2, dan juga penghantaran langsung. Fleksibiliti ini memastikan pembangun dapat memilih kaedah yang paling sesuai untuk kes penggunaan khusus mereka. Ia menyediakan pilihan penyesuaian yang meluas dan membolehkan pembangun menetapkan tajuk tersuai, mengubah pengekodan, menambah lampiran, imej dalam teks, serta menyesuaikan parameter lain untuk memenuhi keperluan khusus. Sebagai projek sumber terbuka, API ini mendapat manfaat daripada komuniti penyumbang dan pengguna yang dinamik. Komuniti aktif ini memastikan kemas kini berkala, penambahbaikan berterusan, serta kekayaan pengetahuan dan sumber yang dikongsi. Nodemailer menonjol sebagai penyelesaian yang kuat, fleksibel, dan boleh dipercayai untuk integrasi e-mel dalam aplikasi Node.js. Sifat sumber terbukanya dan sokongan komuniti yang kukuh menjadikannya alat pilihan bagi pembangun yang ingin meningkatkan aplikasi mereka dengan keupayaan penghantaran e-mel yang mantap.

Previous Next

Mula Menggunakan Nodemailer

Cara yang disyorkan untuk memasang Nodemailer ialah menggunakan NPM. Sila gunakan perintah berikut untuk pemasangan yang lancar.

Pasang Nodemailer melalui npm

npm install nodemailer
 

Menghantar Mesej E-mel dari Node.js

API e-mel Nodemailer sumber terbuka membolehkan pembangun perisian mencipta dan menghantar mesej e-mel dari aplikasi Node.js tanpa sebarang kebergantungan luaran. API ini menyokong pelbagai mekanisme penghantaran, membolehkan pembangun memilih kaedah terbaik untuk menghantar e-mel. Kaedah penghantaran yang paling biasa termasuk Penghantaran SMTP, Sokongan OAuth2 atau Penghantaran Langsung. Ia menyokong penambahan lampiran kepada e-mel, menyematkan lampiran imej untuk kandungan HTML, menghantar e-mel kepada pelbagai pengguna dan sebagainya. Berikut ialah contoh mudah yang menunjukkan bagaimana pembangun perisian boleh menggunakan penghantaran SMTP untuk menghantar mesej e-mel dari aplikasi Node.js.

Bagaimana Menghantar Mesej E-mel melalui Pengangkutan SMTP dari Aplikasi 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));
});
 

Hantar E-mel dengan Kandungan Kaya dari Aplikasi Node.js

API Nodemailer membolehkan penciptaan kandungan e-mel yang kaya, menyokong kedua-dua format teks biasa dan HTML dalam aplikasi Node.js. Ini membolehkan pemaju perisian menghasilkan e-mel yang menarik secara visual yang boleh mengandungi gaya, imej, dan bahkan kandungan interaktif. Dengan menggunakan API bersama enjin templat seperti Handlebars atau EJS, pemaju dapat mencipta templat e-mel yang dinamik dan berasaskan data. Ini sempurna untuk menghantar mesej peribadi, di mana kandungan boleh menyesuaikan diri berdasarkan data pengguna. API menyokong lampiran, menjadikannya mungkin untuk menghantar fail seperti PDF, imej, atau apa-apa jenis fail lain bersama e-mel.

Header Tersuai dan Imej Terbenam

Untuk penyesuaian e-mel lanjutan, API Nodemailer membenarkan pemaju perisian menyertakan tajuk tersuai dan imej terbenam dalam aplikasi Node.js. Ciri ini sangat berguna untuk penjenamaan dan pemperibadian, memastikan e-mel selaras dengan rupa dan rasa aplikasi. Tajuk tersuai boleh digunakan untuk menetapkan metadata khusus bagi e-mel, manakala imej terbenam dapat menjadikan e-mel anda menarik secara visual dengan memaparkan imej secara dalam baris. Di bawah ini ialah contoh komprehensif yang menunjukkan cara menghantar e-mel dengan tajuk tersuai dan imej terbenam.

Bagaimana Menghantar E-mel dengan Header Tersuai dan Imej Terbenam melalui 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: `

Selamat Datang!

E-mel ini mengandungi pengepala khusus dan imej terbenam.

`, 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); });
 Melayu