오늘은 nodeJS를 이용해 이메일을 보내는 방법을 알아보자.
사실 mailchimp와 같은 Third-party API를 활용하면 간단하게 메일을 작성해서 메일을 주고받을 수 있지만,
Third-party API를 이용하면 해당 API를 또 한 번 학습해야 하는 데다 지원하는 기능 이외에 기능을 추가하기가 어려운 단점이 있다.
따라서 오늘은 SMTP 프로토콜을 이용한 이메일 전송방법을 알아보려한다.
NodeJS에는 SMTP 프로토콜 통신을 위한 준비가 모두 되어있다.
일단은 아래 모듈을 다운받아 주자
npm install nodemailer
createTransport() 메서드는 메일을 보내기 전 환경을 셋업 하는 메서드다.
필자는 naver를 이용했기 때문에 아래와 같이 설정했다.
const nodemailer = require('nodemailer');
const transporter = nodemailer.createTransport({
service: 'Naver',
host: 'smtp.naver.com',
port: 587,
auth: {
user: "아이디@naver.com",
pass: "패스워드"
}
})
그리고 네이버 메일에서 메일 설정 변경해줘야 한다.
내 메일함에서 설정 버튼을 클릭한후 IMAP/SMTP 설정을 아래와 같이 변경해 준다.
그리고 메일을 작성해 message 변수에 담아 sendMail() 메서드로 전송만 하면 끝!
const message = {
from: "swim1720@naver.com",
to: "swim1720@gmail.com",
subject: "This email has been sent from Nodejs",
text: "Hello SMTP Email"
}
transporter.sendMail(message, (err, info) => {
if (err) {
console.log(err)
} else {
console.log(info);
}
})
'Javascript' 카테고리의 다른 글
[JS] 스크린 맨 아래 이동하기 (0) | 2022.03.05 |
---|---|
[JS] 이메일 인증 코드 생성하기 (0) | 2022.02.13 |
[nodeJs] Yahoo Finance에서 주식 데이터 끌어오기 (0) | 2022.01.29 |
[JS] 날짜 데이터 포맷 변경하기 (0) | 2022.01.23 |
[JS] 화살표 함수에서의 "this" 자동 바인딩 (0) | 2021.12.06 |