Rumah > hujung hadapan web > tutorial js > Menguasai Penghantaran E-mel dalam Node.js: Panduan Langkah demi Langkah

Menguasai Penghantaran E-mel dalam Node.js: Panduan Langkah demi Langkah

王林
Lepaskan: 2024-08-28 06:11:02
asal
375 orang telah melayarinya

Mastering Email Sending in Node.js: A Step-by-Step Guide

Menghantar e-mel ialah ciri biasa dalam kebanyakan aplikasi web, sama ada untuk pendaftaran pengguna, penetapan semula kata laluan atau kempen pemasaran. Dalam panduan ini, kami akan menunjukkan kepada anda cara menghantar e-mel menggunakan Node.js dengan bantuan modul NodeMailer. Kami akan merangkumi segala-galanya daripada menyediakan projek anda kepada menghantar e-mel HTML dan mengendalikan lampiran.


1. Bermula dengan Projek E-mel Node.js Anda

Pertama sekali, anda perlu menyediakan projek Node.js baharu untuk menghantar e-mel.

  • Buat Folder Projek
  mkdir emailtest
  cd emailtest
Salin selepas log masuk
  • Mulakan Projek Anda Buat fail package.json dengan kandungan berikut:
  {
    "name": "emailtest",
    "version": "1.0.0",
    "main": "index.js",
    "dependencies": {
      "nodemailer": "^6.0.0"
    }
  }
Salin selepas log masuk
  • Pasang NodeMailer Pasang modul NodeMailer yang diperlukan dengan menjalankan:
  npm install
Salin selepas log masuk

2. Menghantar E-mel Pertama Anda

Setelah projek anda disediakan, mari hantar e-mel ringkas.

  • Buat Fail index.js Tambahkan kod berikut untuk menghantar e-mel:
  import nodemailer from 'nodemailer';

  const transporter = nodemailer.createTransport({
    host: 'smtp.freesmtpservers.com',
    port: 25
  });

  const mailOptions = {
    from: '"Test Email" <test@email.com>',
    to: 'someone@example.com',
    subject: 'Hello!',
    text: 'Hello world!',
    html: '<p>Hello world!</p>'
  };

  transporter.sendMail(mailOptions, (error, info) => {
    if (error) {
      console.log('Error:', error);
    } else {
      console.log('Email sent:', info.response);
    }
  });
Salin selepas log masuk
  • Jalankan Kod Anda Jalankan kod menggunakan Node.js:
  node index.js
Salin selepas log masuk

Anda sepatutnya melihat pengesahan bahawa e-mel telah dihantar.


3. Menambah Lampiran pada E-mel Anda

Jika anda perlu menghantar fail dengan e-mel anda, NodeMailer memudahkannya.

  • Contoh dengan Lampiran
  const mailOptions = {
    from: '"Test Email" <test@email.com>',
    to: 'someone@example.com',
    subject: 'Hello with Attachments!',
    text: 'Please find the attached files.',
    attachments: [
      {
        filename: 'test.txt',
        path: './test.txt' // Local file
      },
      {
        filename: 'example.txt',
        content: 'This is a text file content.' // Content as string
      }
    ]
  };
Salin selepas log masuk

4. Menghantar E-mel HTML

E-mel HTML boleh menjadikan mesej anda lebih menarik dengan pemformatan, imej dan pautan.

  • Contoh E-mel HTML
  const mailOptions = {
    from: '"Test Email" <test@email.com>',
    to: 'someone@example.com',
    subject: 'Hello, HTML!',
    html: '<h1>Hello world!</h1><p>This is an HTML email.</p>'
  };
Salin selepas log masuk

5. Mengendalikan Ralat

Adalah penting untuk mengendalikan ralat untuk memastikan aplikasi anda berfungsi dengan lancar.

  • Contoh Pengendalian Ralat
  transporter.sendMail(mailOptions, (error, info) => {
    if (error) {
      console.log('Error:', error.message);
    } else {
      console.log('Email sent:', info.response);
    }
  });
Salin selepas log masuk

Kesimpulan

Menghantar e-mel menggunakan Node.js dan NodeMailer adalah mudah. Dengan hanya beberapa baris kod, anda boleh menghantar teks biasa atau e-mel HTML, melampirkan fail dan mengendalikan ralat dengan cekap. Apabila keperluan anda berkembang, anda boleh meneroka ciri yang lebih maju seperti menyepadukan dengan perkhidmatan e-mel khusus dan mengurus baris gilir e-mel tak segerak.

Atas ialah kandungan terperinci Menguasai Penghantaran E-mel dalam Node.js: Panduan Langkah demi Langkah. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan