Nodejs — การส่งอีเมลผ่าน Mailgun ในฟอร์ม HTML

Natthagid Thammachot
Artisan Digital
Published in
3 min readFeb 25, 2018

Mailgun คือ เซอร์วิสที่ช่วยในการส่งอีเมล (Third-party mailing service) ตัวหนึ่งที่มีมาตราฐาน มีความน่าเชื่อถือ และส่งอีเมลฟรีเดือนละ 1 หมื่นฉบับ และในบทความนี้ ผมจะบอกวิธีใช้ Mailgun พร้อมทั้งการส่งอีเมลใน ฟอร์ม html ด้วย NodeJs.

ในขั้นตอนแรกเลยนั้น เราต้องทำการเข้าไปสมัครสมาชิกและยืนยันตัวตน โดยเข้าไปที่ลิงก์ https://www.mailgun.com/ หลังจาก login ก็จะเข้ามาหน้า dashboard

หลังจากนั้นให้เราเข้าไปที่ Domains ก็จะมี domain อยู่ตัวหนึ่ง ซึ่งเป็นตัวทดสอบในการใช้ส่ง อีเมลของเรา

หลังจากนั้นคลิกไปที่ Domain Name ที่ระบบให้มาก็จะมีหน้าตาแบบนี้

หลังจากนั้น เรามา SET UP NodeJs กัน เริ่มจาก install mailgun ใน node package ก่อน โดยผมจะใช้ตัว mailgun-js (https://github.com/bojand/mailgun-js)

หลังจากนั้นเรามาเริ่มกันเลย

โดยที่ api_key กับ domain เราสามารถเข้าไปเอาได้ที่ Domain information ที่ ทาง Mailgun ได้สร้างให้เรา

ในส่วนของ data นั้น

from = email ของผู้ส่ง

to = email ของผู้รับ

subject = ชื่อจดหมาย

text = ข้อความ ของจดหมาย

เอาลอง run ดู ถ้าปกติ จะขึ้นตามภาพข้างล่าง

แล้วอีเมลก็จะเข้ามา ตามข้อมูลที่เราใส่เข้าไป

ส่วนเนื้อหาข้างในก็จะ เหมือนกับข้อความใน text

เอาล่ะ เรามาทำการส่งอีเมลในฟอร์ม HTML กันดีกว่า

เพียงแค่เราเปลี่ยนจาก เพิ่ม html เข้าไปใน object data ก็สามารถส่งแบบ html ได้แล้ว

อีเมลก็จะเข้าแบบเดิม แต่เป็น type html

เอาล่ะมาลองใส่ css ให้ html โดยสามารถใส่ได้แค่ inline เท่านั้น

ผลลัพธ์ก็จะได้เป็น

เรามาลองสร้าง ฟอร์มกันเลยดีกว่า (ผมจะทิ้ง source code ไว้ให้นะครับ LINK)

แล้วผลลัพธ์ที่ได้ก็คือ …

เพียงเท่านี้เราก็จะสามารถส่ง email ด้วย ฟอร์ม html ได้แล้ว.

และนี้ก็คือทั้งหมดของการนำ Mailgun มาใช้ส่งอีเมลด้วย Nodejs ซึ่งใครที่สนใจการสร้างฟอร์ม html บนอีเมลผมจะทิ้งลิงก์วิธีการออกแบบไว้ให้ สามารถเข้าไปศึกษากันได้เลยครับ ขอบคุณครับ

https://webdesign.tutsplus.com/articles/build-an-html-email-template-from-scratch--webdesign-12770

--

--