مشخصات مقاله
آموزش ارسال ایمیل در Node.js با استفاده از Nodemailer
ماژول Nodemailer یک ابزار قدرتمند برای ارسال ایمیل در Node.js است. شما میتوانید به راحتی با استفاده از این ماژول از طریق سرور خود ایمیل ارسال کنید.
نصب و راهاندازی Nodemailer
با استفاده از دستور زیر در کنسول خط فرمان، می توانید ماژول Nodemailer را با استفاده از NPM، دانلود و نصب نمایید :
C:\Users\Your Name>npm install nodemailer
پس از دانلود و نصب ماژول Nodemailer، با استفاده از تابع ()require ، همانند کد زیر، این ماژول را به پروژه خود اضافه کنید :
var nodemailer = require('nodemailer');
ارسال ایمیل در Node.js
پس از نصب ماژول Nodemailer، می توانید از سرور خود ایمیل ارسال کنید. برای این منظور از username و password سرور ایمیل خود، جهت ارسال پیام ها استفاده کنید. در کد مثال عملی زیر، از سرور Gmail کاربر، جهت ارسال ایمیل ها استفاده شده است.
var nodemailer = require('nodemailer');
var transporter = nodemailer.createTransport({
service: 'gmail',
auth: {
user: 'youremail@gmail.com',
pass: 'yourpassword'
}
});
var mailOptions = {
from: 'youremail@gmail.com',
to: 'myfriend@yahoo.com',
subject: 'Sending Email using Node.js',
text: 'That was easy!'
};
transporter.sendMail(mailOptions, function(error, info){
if (error) {
console.log(error);
} else {
console.log('Email sent: ' + info.response);
}
});
برای استفاده از Gmail به عنوان سرور ایمیل، باید دسترسی "کمتر امن" را در حساب Gmail خود فعال کنید. همچنین استفاده از توکن OAuth2 به جای پسورد کاربر، بهطور کلی برای امنیت بیشتر توصیه میشود.
ارسال ایمیل به چندین گیرنده
اگر میخواهید ایمیل را به چندین گیرنده ارسال کنید، میتوانید آدرس ایمیلها را در فیلد to با کاما از یکدیگر جدا کنید:
var mailOptions = {
from: 'youremail@gmail.com',
to: 'myfriend@yahoo.com, myotherfriend@yahoo.com',
subject: 'Sending Email using Node.js',
text: 'That was easy!'
}
ارسال مقادیر HTML با ایمیل
برای ارسال ایمیل با فرمت HTML، میتوانید به جای خاصیت text از خاصیت html استفاده کنید:
var mailOptions = {
from: 'youremail@gmail.com',
to: 'myfriend@yahoo.com',
subject: 'Sending Email using Node.js',
html: 'Welcome
That was easy!
'
}