10- كورس Node.js بالعربي – Node.js Email

شرح تفصيلي عن إرسال البريد الإلكتروني في Node.js

مقدمة عن إرسال البريد الإلكتروني في Node.js

يعتبر إرسال البريد الإلكتروني من المهام الشائعة في تطوير التطبيقات الويب، حيث يستخدم لإرسال التأكيدات، التنبيهات، والتحديثات للمستخدمين. يوفر Node.js مجموعة من الأدوات والمكتبات التي تسهل عملية إرسال البريد الإلكتروني بشكل فعال وآمن. أحد أشهر المكتبات المستخدمة لهذا الغرض هي Nodemailer، والتي توفر واجهة برمجية بسيطة ومرنة للتعامل مع خدمات [شركة برمجة مصرية] البريد الإلكتروني المختلفة.

استخدام مكتبة Nodemailer لإرسال البريد الإلكتروني

Nodemailer هي مكتبة قوية في Node.js تتيح للمطورين إرسال رسائل البريد الإلكتروني بسهولة. تدعم المكتبة بروتوكولات متعددة مثل [شركة برمجة مصرية] SMTP، وتعمل بشكل جيد مع معظم خدمات البريد الإلكتروني مثل Gmail وYahoo. لاستخدام Nodemailer، يجب أولاً تثبيتها باستخدام npm:

npm install nodemailer

بعد تثبيت المكتبة، يمكننا البدء في إعداد عملية إرسال البريد الإلكتروني. يتطلب ذلك إنشاء كائن نقل (Transporter) يتضمن إعدادات الخدمة ومعلومات الدخول. إليك مثال يوضح كيفية إعداد وإرسال بريد إلكتروني بسيط باستخدام Gmail:

const nodemailer = require('nodemailer');

let transporter = nodemailer.createTransport({
    service: 'gmail',
    auth: {
        user: 'your-email@gmail.com',
        pass: 'your-email-password'
    }
});

let mailOptions = {
    from: 'your-email@gmail.com',
    to: 'recipient-email@example.com',
    subject: 'Test Email',
    text: 'This is a test email from Node.js'
};

transporter.sendMail(mailOptions, (error, info) => {
    if (error) {
        return console.log(error);
    }
    console.log('Email sent: ' + info.response);
});

إرسال البريد الإلكتروني باستخدام خيارات متقدمة

يمكنك تخصيص رسائل البريد الإلكتروني بشكل أكبر باستخدام Nodemailer. يمكنك إرسال رسائل HTML، إرفاق ملفات، وتعيين رؤوس مخصصة. لإرسال رسالة تحتوي على HTML، يمكننا ببساطة تعديل الخاصية text إلى html في خيارات البريد:

let mailOptions = {
    from: 'your-email@gmail.com',
    to: 'recipient-email@example.com',
    subject: 'HTML Email',
    html: '<h1>Welcome</h1><p>This is an HTML email</p>'
};

لإرفاق ملف، يمكننا استخدام الخاصية attachments في خيارات البريد. إليك مثال يوضح كيفية إرفاق ملف:

let mailOptions = {
    from: 'your-email@gmail.com',
    to: 'recipient-email@example.com',
    subject: 'Email with Attachment',
    text: 'Please find the attached document.',
    attachments: [
        {
            filename: 'document.txt',
            path: './document.txt'
        }
    ]
};

باستخدام Nodemailer، يمكنك تبسيط عملية إرسال البريد الإلكتروني في تطبيقاتك وتحسين التواصل مع المستخدمين عبر رسائل بريد إلكتروني مخصصة وفعالة.