TIL 23_06_28 (수)

jegw·2023년 7월 1일
0

TIL

목록 보기
32/77
post-custom-banner

오늘 한 일

뉴스피드 프로젝트

  • 이메일 인증 구현

서버에서 이메일 보내기

  • 사용자가 회원가입할 때
    Nodemailer 패키지를 사용한다.

설치

npm install nodemailer

.env 파일 안에 이메일을 보낼 계정과 패스워드를 입력한다.

.env
NODEMAILER_USER=메일 보내는 ID
NODEMAILER_PASS=비밀번호

아래는 gmail로 메일을 보낼 때의 예시이다.

const nodemailer = require("nodemailer");

let transporter = nodemailer.createTransport({
      service: "gmail",
      host: "smtp.gmail.com",
      port: 587,
      secure: false,
      auth: {
        user: process.env.NODEMAILER_USER,
        pass: process.env.NODEMAILER_PASS
      }
    });

    let message = {
      from: `뉴스피드 프로젝트`,
      to: email,
      subject: `이메일 확인 코드: ${authNum}`,
      html: authTemplate(authNum)
    };

    await transporter.sendMail(message, (error, info) => {
      if (error) {
        return console.log(error.message);
      }
    });
  • 인증에 사용할 코드를 만들어서 message에 담는다.
  • transporter를 만들고 message를 담아서 sendMail하면 끝이다.

https://nodemailer.com/about/

post-custom-banner

0개의 댓글