รู้จักกับ Mailtrap เครื่องมือที่ใช้สำหรับทดสอบการส่งอีเมล
วันนี้เราจะมาทำความรู้จักกันว่า MailTrap คืออะไรกันแน่ ? และมันมีดียังไง ?
Mailtrap คืออะไร ?
เครื่องมือที่ช่วยทำให้การทดสอบส่งอีเมลเป็นเรื่องง่าย ช่วยยังไงก็คือ ปกติแล้วการส่งอีเมลจะส่งไปที่ Inbox ของผู้บริการอีเมลต่าง เช่น gmail, outlook, yahoo แต่สำหรับ mailtrap อีเมลจะยังไม่ส่งไปที่อีเมลของผู้รับ แต่อีเมลจะถูกส่งเข้าไปที่ Inbox ของ mailtrap ผ่านทาง SMTP server ของ mailtrap ทำให้การทดสอบอีเมล template รวมถึง event ต่าง ๆ ในการส่งอีเมล สามารถดูได้จาก Inbox ของ mailtrap ได้เลย
ตารางราคาของ Mailtrap
เนื่องจากตัวนี้เป็นเครื่องมือที่มีค่าใช้จ่าย แต่ก็มีแพลนแบบฟรีให้ใช้ ตรงนี้เราจะโฟกัสที่แพลนแบบฟรี ซึ่งประกอบไปด้วย
- จำนวนที่ทดสอบอีเมลต่อเดือน 500 ครั้ง
- การส่งอีเมลใน 10 วินาที จำกัดอยู่ที่ 2 ครั้ง
- มีกล่อง Inbox 1 กล่อง
- จำนวนอีเมลสูงสุดที่เก็บใน Inbox สูงสุด 50 อีเมล
- สามารถเข้าถึง API ได้ อย่างเช่น การดูหรือลบอีเมล ผ่าน RESTFull API ดูเพิ่มเติมได้ที่ https://mailtrap.docs.apiary.io
- ขนาดของอีเมลสูงสุดที่ 5 MB
จากที่ได้ลองใช้ก็เพียงพอสำหรับโปรเจคที่ส่งอีเมลไม่เยอะมาก ถ้าอีเมลใน Inbox เต็ม ก็กดลบทั้งหมด แล้วส่งอีเมลใหม่ต่อได้ครับ
ขั้นตอนการทดสอบอีเมลด้วย Mailtrap
- คลิปไปที่ Inbox
- คักลอก SMTP config วางไปที่ Library ที่ส่งอีเมล
- ทำการส่งอีเมล
อาจจะมองไม่เห็นภาพ แต่ผมมีสาธิตให้ดูครับ
หลังจากเข้าสู่ระบบของ Mailtrap แล้วคลิกไปที่ Inbox ในที่นี้ inbox ผมชื่อ zerojame ซึ่งผมได้เปลื่ยนชื่อไว้ ซึ่งปกติจะชื่อ demo inbox
หลังจากเข้า inbox มาแล้วจะได้ค่า SMTP config ตามนี้ครับ
mkdir nodemailer-mailtrap
cd nodemailer-mailtrap
npm init -y
npm i nodemailer
สร้างโฟลเดอร์, init package และลง package nodemailer ในทีนี้ผมใช้ตัวส่งอีเมลเป็น Nodemailter ซึ่งใครที่ทำตามต้องมี Node.js ด้วยนะครับ
สร้างไฟล์ index.js
อธิบายคร่าว ๆ นะครับ โค้ดนี้ส่งอีเมลจาก foo@example.com ไปที่ bar@example.com และ baz@example.com มี subject คือ Hello ✔
มี html เป็น <b>Hello world?</b> โดยแนบไฟล์รูปไปด้วย 1 รูป
node index.js
ทำการรัน node index.js
หลังจากนั้นอีเมลที่ทำการส่งอีเมลก็เข้ามาที่ inbox จะเจออีเมลที่เราส่งเข้ามา สามารถกดดูอีเมลเหมือนพวกบริการอีเมลอื่น ๆ
ในอีเมลก็แสดงเป็น HTML ตามที่เราส่งมา เราสามารถเช็คได้ว่าที่เราทำตรงกับ Template ที่วางไว้มั้ย ไฟล์รูปขึ้นมั้ย หรือมีไฟล์แนบมาด้วยรึเปล่า ?
ในหน้านี้ก็แสดงเป็นโค้ดแบบ html
ในหน้านี้ก็เป็นรายงานการ spam ต่าง ๆ
มีการตรวจสอบ HTML และ CSS ว่าถูกต้องรึเปล่า
สำหรับ Mailtrap ก็เป็นเครื่องมือช่วยได้มากในการพัฒนา Template การตรวจสอบ HTML ไฟล์แนบต่าง ๆ และก็ช่วยในการทดสอบ event อีเมลต่าง ๆ ว่า event นี้ถูกส่งจริงหรือไม่ ? สำหรับบทความนี้ขอจบแต่เพียงเท่านี้ครับ