Panduan Menggunakan SparkPost dengan Node.js
Burung
1 Sep 2017
1 min read

Intisari Utama
SparkPost menawarkan berbagai cara untuk mengirim email dari Node.js — panggilan API langsung, transport Nodemailer, dan pengiriman multi-channel notif.me.
Simpan kunci API di dalam variabel lingkungan, jangan pernah menuliskannya secara permanen. SparkPost secara otomatis mendeteksi
SPARKPOST_API_KEY.Transmissions API memberi Anda fleksibilitas yang kuat: template, data substitusi, lampiran, dan pelabelan kampanye.
Pengguna Nodemailer dapat langsung beralih ke SparkPost dengan transport resmi — tanpa perlu penulisan ulang kode besar-besaran.
notif.me menyediakan pengiriman multi-channel (email, SMS, push) dengan strategi cadangan, membuatnya ideal untuk sistem notifikasi yang kuat.
Node.js secara alami cocok dengan API email cloud modern dan alur kerja serverless, membuatnya mudah untuk menyematkan kemampuan email langsung di dalam aplikasi Anda.
Sorotan Q&A
Apa cara tercepat untuk mulai mengirim email dengan SparkPost di Node.js?
Pasang paket
sparkpost, inisialisasi klien dengan kunci API (sebaiknya melalui variabel lingkungan), dan panggil metodetransmissions.send()dengan penerima + konten.Apakah saya perlu menyimpan kunci SparkPost API saya dalam kode?
Tidak — dan Anda sebaiknya tidak melakukannya. Gunakan variabel lingkungan. Klien secara otomatis membaca
SPARKPOST_API_KEY.Bisa saya mengirim email menggunakan templates daripada inline HTML?
Ya. Transmissions API mendukung templat tersimpan, data substitusi, daftar penerima, lampiran, cc/bcc, dan lainnya.
Bagaimana jika saya sudah menggunakan Nodemailer?
Anda terlindungi — SparkPost dilengkapi dengan transportasi Nodemailer resmi. Cukup konfigurasikan dengan API key Anda dan gunakan Nodemailer seperti biasa.
Dapatkah SparkPost bekerja dengan sistem pesan multi-channel?
Ya. Library seperti
notifme-sdkmemungkinkan email, SMS, push, dan webpush dengan logika fallback, dan mereka menyertakan penyedia SparkPost.Apakah Node.js cocok untuk alur kerja email tanpa server?
Tentu. Ini cocok dengan Cloud Functions, Lambdas, dan lingkungan tanpa server apa pun yang menggunakan API SparkPost untuk email yang digerakkan oleh acara.
Siapa yang harus menggunakan Transmissions API vs. Nodemailer atau notif.me?
Gunakan Transmissions API ketika Anda menginginkan kontrol penuh dan kinerja.
Gunakan Nodemailer jika proyek Anda sudah menggunakannya dan Anda ingin integrasi cepat.
Gunakan notif.me untuk pengiriman pesan multi-kanal atau strategi pengiriman pengganti.
Apa praktik terbaik terbesar saat mengirim email dari Node?
Perlakukan API key Anda sebagai informasi sensitif — hanya gunakan variabel lingkungan, jangan pernah berkomitmen dalam kode.
Sebagai Pengacara Pengembang untuk SparkPost, saya menulis banyak aplikasi contoh. Latar belakang saya sebagian besar adalah pengembangan front-end, sehingga bahasa terkuat saya adalah JavaScript. Berkat Node.js, saya juga menjadi pengembang backend yang cukup baik. Apakah ini berarti saya sekarang adalah pengembang full stack?
Pengenalan Node.js
Sebagai Developer Advocate untuk SparkPost, saya menulis banyak aplikasi contoh. Latar belakang saya sebagian besar adalah pengembangan front-end, oleh karena itu bahasa terkuat saya adalah JavaScript. Berkat Node.js, saya juga menjadi pengembang backend yang cukup baik. Berbicara tentang aplikasi contoh, Node.js juga bekerja dengan baik untuk membangun fungsi serverless yang terintegrasi dengan Flow Builder - seperti panduan integrasi Google Cloud Functions dan Vision API kami. Apakah ini berarti saya sekarang menjadi pengembang full stack? Bagaimanapun, penting bagi saya bahwa kami memiliki perpustakaan klien SparkPost yang luar biasa untuk Node.js. Jadi, saya langsung terjun dan menjadi kontributor (bahkan sebelum saya dipekerjakan).
Izinkan saya membantu Anda memulai pengiriman email dengan SparkPost pada proyek Node.js Anda. Sebelum mendalami spesifik Node.js, Anda mungkin ingin memahami fundamental dari email API dalam infrastruktur cloud dan bagaimana mereka cocok dalam pengembangan aplikasi modern.
Instalasi & Pengaturan
Mengirim Email
Sekarang setelah Anda memiliki instance SparkPost, Anda siap untuk mengirim. Ada cukup banyak opsi yang tersedia untuk mengirim, tetapi mari kita mulai dengan contoh sederhana. Berikut cara mengirim email ke penerima tunggal, dengan menentukan konten secara inline:
Catatan: Contoh ini menggunakan Promises, tetapi jangan khawatir. Kami juga mendukung fungsi callback.
Untuk aplikasi perusahaan yang memerlukan manajemen email yang komprehensif, pengembang mungkin juga perlu mempertimbangkan membangun sistem pengarsipan email untuk menangani persyaratan penyimpanan dan kepatuhan.
Ada lebih banyak opsi yang tersedia dengan transmisi, termasuk menentukan template yang disimpan atau daftar penerima, cc dan bcc, menambahkan lampiran, menentukan kampanye, menggunakan data substitusi, dan banyak lagi. Lihat contoh-contoh, dokumentasi untuk sumber daya Transmissions, dan dokumentasi API Transmissions untuk info lebih lanjut.
Bonus: Mengirim Email dengan Nodemailer
Nodemailer adalah library populer untuk Node.js yang membuat pengiriman email “mudah seperti kue.” Bagi Anda yang memilih untuk menggunakan library ini, kami membuat SparkPost transport untuk Nodemailer. Anda perlu memasang paket nodemailer dan nodemailer-sparkpost-transport di proyek Anda.
> npm install nodemailer nodemailer-sparkpost-transport --save
Sekarang Anda bisa membuat instance transport nodemailer:
Perhatikan bagaimana saya membaca API Key dari variabel lingkungan. Masih merupakan praktik terbaik untuk tidak pernah menaruhnya langsung ke dalam kode Anda.
Ada beberapa opsi yang bisa dimasukkan ke dalam SparkPost transport, seperti ID kampanye dan apakah pesan bersifat transaksional atau tidak. Lihat README.md untuk semua opsi.
Begini cara Anda mengirim pesan yang sama di atas menggunakan Nodemailer:
Bonus Ganda: Mengirim Email dengan notif.me
Kita semua tahu bahwa email adalah raja komunikasi tetapi terkadang Anda ingin dapat menjangkau orang melalui beberapa saluran. notif.me adalah sebuah library Node.js untuk mengirim semua jenis pesan transaksional. Apakah Anda ingin mengirim email, sms, dorongan, atau webpushes, Anda dapat melakukannya dengan mudah. Itu juga memiliki strategi jatuh dan round robin bawaan untuk beberapa penyedia. Kami baru-baru ini bekerja dengan para pencipta untuk membangun penyedia SparkPost. Anda perlu menginstal paket `notifme-sdk` di proyek Anda.
> npm install notifme-sdk --save
Anda sekarang dapat membuat instance notifme dengan penyedia SparkPost:
Sekali lagi, kami mengambil Kunci API dari variabel lingkungan. Kami sudah mengatakan ini tiga kali — memang sangat penting. 🙂
Sekarang mari ulangi contoh yang sama ini, kali ini menggunakan notif.me:
Sangat mudah digunakan dan saya merekomendasikan melihat fitur lainnya.
Tidak ada cara yang salah untuk Node
Ketika mengirim email menggunakan Node.js, Anda memiliki banyak pilihan. Kami telah bekerja keras untuk membantu membuatnya semudah mungkin.



