먼저 이메일 서비스를 사용한다면 해당 서비스를 신청해야 한다.
https://guide.ncloud-docs.com/docs/email-email-1-2
Cloud Outbound Mailer 서비스를 신청하면 된다. 달에 1000건까지 무료로 사용 가능하다.
Makesignature는 전편에서 만든 함수를 사용하면 된다.
import MakeSignature from "@components/makeSignature";
const axios = require("axios");
export default function sendEmail(email, payload) {
let resultCode = 404;
const date = Date.now().toString();
const accessKey = process.env.NAVER_ACCESS_KEY;
const method = "POST";
const url = "https://mail.apigw.ntruss.com/api/v1/mails";
const signature = MakeSignature("/api/v1/mails", method);
axios({
method: method,
url: url,
headers: {
"Contenc-type": "application/json; charset=utf-8",
"x-ncp-iam-access-key": accessKey,
"x-ncp-apigw-timestamp": date,
"x-ncp-apigw-signature-v2": signature,
},
data: {
senderAddress: `${process.env.MYMAIL}`,
title: `${email}님 반갑습니다. `,
body: `로그인 인증 번호는 ${payload} 입니다.`,
recipients: [
{
address: `${email}`,
name: null,
type: "R",
},
],
individual: true,
advertising: false,
},
})
.then((res) => {
console.log(res.data);
})
.catch((err) => {
console.log(err);
});
return resultCode;
}
입력받은 고객의 이메일을 email , 생성한 고유 토큰을 payload로 받아와서 고객에게 보내주는 방식이다.
사용중인 환경상수
NAVER_ID="ncp:sms:kr:숫자:프로젝트명"
NAVER_ACCESS_KEY="ABABABABAB232323"
NAVER_ACCESS_SECRIT_KEY="ABABABABABABABBABABB23323"
MYMAIL="클라우드 네이버 메일"
MYPHONE="휴대폰 전화번호"
'프로젝트 > 오키드 마켓 (장기 , 1인)' 카테고리의 다른 글
Naver Cloud Platform [3] - SMS 송신하기 (0) | 2022.08.17 |
---|---|
Naver Cloud Platform [1] - API Header (Signature 생성) (0) | 2022.08.16 |
Naver Cloud Platform [0] - 서론 (0) | 2022.08.16 |
Next.js 기본 개발 환경을 위한 설치법 (0) | 2022.08.11 |
Html과 CSS 그리고 마크업 (0) | 2022.08.07 |