저작권 안내
- 책 또는 웹사이트의 내용을 복제하여 다른 곳에 게시하는 것을 금지합니다.
- 책 또는 웹사이트의 내용을 발췌, 요약하여 강의 자료, 발표 자료, 블로그 포스팅 등으로 만드는 것을 금지합니다.
AWS API, CLI 활용하기
이재홍 http://www.pyrasis.com 2014.03.24 ~ 2014.06.30
SES
SES로 메일을 보내는 방법은 다음과 같습니다.
- SES는 Tokyo(ap-northeast-1) 리전에 없으므로 Oregon(us-west-2) 리전을 사용합니다.
- Destination: 배열 형태로 받는 사람, 참조, 숨은 참조를 설정합니다.
- Message: 메일의 제목과 내용을 설정합니다. Body에서 Text 키 대신 Html 키를 사용하면 HTML 메일을 보낼 수 있습니다.
- Source: 보내는 사람 이메일 주소를 설정합니다. SES에서 인증한 이메일 주소나 도메인으로 설정해야 합니다.
- ReplyToAddresses: 답장을 받을 이메일 주소를 설정합니다.
- ReturnPath: 리턴 메일을 받을 이메일 주소를 설정합니다.
SES를 사용하는 방법은 '27장 이메일 전송 서비스 SES'를 참조하기 바랍니다.
ses_1.js
var AWS = require('aws-sdk');
AWS.config.loadFromPath('./config.json');
AWS.config.update({ region: 'us-west-2' });
var ses = new AWS.SES();
var params = {
Destination: { // 필수
BccAddresses: [],
CcAddresses: [],
ToAddresses: [ 'user1@example.net' ]
},
Message: { // 필수
Body: { // 필수
Text: {
Data: 'Hello SES', // 필수
Charset: 'utf-8'
},
},
Subject: { // 필수
Data: 'Hello', // 필수
Charset: 'utf-8'
}
},
Source: 'admin@example.net', // 필수
ReplyToAddresses: [],
ReturnPath: 'return@example.net'
};
ses.sendEmail(params, function (err, data) {
if (err)
console.log(err, err.stack);
else
console.log(data);
});
받는 사람을 JSON 형태로 작성합니다.
{
"BccAddresses": [],
"CcAddresses": [],
"ToAddresses": [ "user1@example.net" ]
}
메일의 제목과 내용을 JSON 형태로 작성합니다.
{
"Body": {
"Text": {
"Data": "Hello SES",
"Charset": "utf-8"
}
},
"Subject": {
"Data": "Hello",
"Charset": "utf-8"
}
}
--destination, --message 옵션에 작성한 JSON을 한 줄로 만들고 ' '(작은 따옴표)로 묶어서 설정합니다.
AWS CLI
$ aws ses send-email --from admin@example.net --destination '{ "BccAddresses": [], "CcAddresses": [], "ToAddresses": [ "user1@example.net" ] }' --message '{ "Body": { "Text": { "Data": "Hello SES", "Charset": "utf-8" } }, "Subject": { "Data": "Hello", "Charset": "utf-8" } }' --region=us-west-2
SES의 메일 전송 할당량, 보낸 메일 개수, 초당 전송 한계를 조회하는 방법은 다음과 같습니다.
ses_2.js
var AWS = require('aws-sdk');
AWS.config.loadFromPath('./config.json');
AWS.config.update({ region: 'us-west-2' });
var ses = new AWS.SES();
ses.getSendQuota({}, function (err, data) {
if (err)
console.log(err, err.stack);
else
console.log(data);
});
AWS CLI
$ aws ses get-send-quota --region=us-west-1
다른 함수들의 사용 방법은 링크를 참조하기 바랍니다.
http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/SES.html
저작권 안내
이 웹사이트에 게시된 모든 글의 무단 복제 및 도용을 금지합니다.- 블로그, 게시판 등에 퍼가는 것을 금지합니다.
- 비공개 포스트에 퍼가는 것을 금지합니다.
- 글 내용, 그림을 발췌 및 요약하는 것을 금지합니다.
- 링크 및 SNS 공유는 허용합니다.
Published
2014-09-30