AWS SES 사용해보기
2020-04-26 15:38:44

SES란?

이메일을 보낼 수 있는 서비스

사용하면서 느낀 장점

  • 뭔가를 설치하거나 복잡한 설정이 필요 없이 쉽게 이메일 전송할 수 있다.
  • 사용한만큼 요금 부과

사용하면서 느낀 단점

  • 실 사용을 할려면 별도로 신청을 해야 하는데 1~2일 기간이 소요 된다.
  • 서울 리전에서는 서비스를 하지 않으므로 지원하는 리전에서만 사용 가능

실습

테스트를 하기 위해서는 발송할 이메일, 수신할 이메일을 등록을 해야 한다.

테스터 등록

코드는 간단 하다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47

const AWS = require('aws-sdk');

AWS.config.update({
region: '', // ses 만든 region
accessKeyId: '', // IAM
secretAccessKey: '', // IAM
});

const ses = new AWS.SESV2();

const html = '<h1 style="color:aqua;">반갑습니다</h1>';

const text = '안녕하세요?';

const params = {
Content: {
Simple: {
Body: { // NOTE: 메일 본문
// Html: { // NOTE: HTML인 경우
// Data: html,
// Charset: 'utf-8', // 인코딩
// },
Text: { // NOTE: 일반 텍스트의 경우
Data: text,
Charset: 'utf-8',
},
},
Subject: { // NOTE: 메일 제목
Data: '기획안 전달 드립니다.',
Charset: 'utf-8',
},
},
},
Destination: {
BccAddresses: [], // NOTE: 숨은 참조 리스트
CcAddresses: [], // NOTE: 참조 리스트
ToAddresses: ['delryn@naver.com'], // NOTE: 수신 할 메일 주소 리스트
},
FromEmailAddress: '"delryn" <hidelryn@gmail.com>', // NOTE: 발송 하는 메일 주소
ReplyToAddresses: [], // 답장 받을 이메일 주소
};

ses.sendEmail(params, (err) => {
if (err) console.log('err', err);
console.log('메일 전송 성공!');
});

실행 결과

html

text

실서비스

도메인등록

도메인을 등록해줘야 발송자를 멍멍@도메인으로 보낼 수 있다.

신청

파랑색 리퀘스트 버튼을 누르면 AWS 서포트 페이지로 이동하는 데 거기서 해당 질문에 각각

답변을 작성을 해야 수락이 되야 실제 서비스로 쓸 수 있다 기간은 1~2일 소요

참고