728x90
반응형
1. mailtrap 서비스
- 실제로 이메일을 받는 사람 주소로 발송하지 않고, 정상적으로 보내지는지를 테스트할 수 있는 가짜 SMTP 서버이다.
- 일반 텍스트, HTML 형식, 첨부 파일 등 실제 이메일이 어떻게 보내질지를 모두 테스트할 수 있다.
2. mailtrap 사용법
- 공식사이트(https://mailtrap.io/)로 접속해 회원가입 진행 후 로그인
- 로그인하면 그림처럼 Inboxes 메뉴로 들어갈 수 있다. 'Add Inbox' 버튼을 클릭 후'DEMO'라는 이름으로 Inbox 추가
- 생성된 Inbox인 'DEMO'를 클릭
- Nodemailer를 선택하면 transport 객체를 생성하는 데 필요한 SMTP 정보를 담음 코드가 생성되는데 Copy 버튼으로 코드를 복사
- nodemailer 폴더의 index.js 파일을 열고 mailtrap 서비스로 이메일을 발송하는 sendDemo() 함수를 추가
const sendDemo = async (data) => {
var transport = nodemailer.createTransport({
host: "smtp.mailtrap.io",
port: 2525,
auth: {
user: "3e53faf88bc5b1",
pass: "c3076d9c68f152"
}
});
transport.sendMail(data, (err, info) => {
if(err) {
console.log(err);
}else {
return info.response;
}
});
}
- app_nodemailer.js 파일을 열어 mailtrap 서비스를 테스트하기 위한 용도로 라우트를 하나 더 추가
// localhost:3000/api/email2 라우트로 이메일 데이터를 post로 전송하면 nodemailer의 sendDemo 실행
app.post('/api/email2', async (req, res) => {
const r = await nodemailer.sendDemo(req.body.param);
res.send(r); // 결과를 클라이언트로 보냄
});
- Postman을 실행하고 Request 추가하고 실행
- mailtrap의 'DEMO' Inbox로 이메일이 정상적으로 들어온 것을 확인할 수 있다.
- mailtrap을 사용하면 프로젝트 중에 발송한 이메일 정보를 한곳에서 모아서 확인할 수 있는 장점이 있다.
728x90
반응형
'Runtime > Node.js' 카테고리의 다른 글
25. 엑셀 파일 처리(엑셀 파일 읽기) (4) | 2023.04.24 |
---|---|
24. 작업 스케줄러(Job Scheduler) (3) | 2023.04.23 |
22. 메일링 서비스(이메일 보내기) (2) | 2023.04.18 |
21. 메일링 서비스(Nodemailer) (7) | 2023.04.18 |
20. 로그 관리 (2) | 2023.04.18 |