AWS SDK for JavaScript V3 API 참조 가이드에서는 버전 3(V3)의 모든 API 작업에 대해 AWS SDK for JavaScript 자세히 설명합니다.
기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Amazon에서 이메일 템플릿 사용하기 SES
이 Node.js 코드 예제는 다음을 보여 줍니다.
모든 이메일 템플릿 목록을 가져오는 방법
이메일 템플릿을 검색하고 업데이트하는 방법
이메일 템플릿을 생성하고 삭제하는 방법
SESAmazon에서는 이메일 템플릿을 사용하여 개인화된 이메일 메시지를 보낼 수 있습니다. Amazon에서 이메일 템플릿을 생성하고 사용하는 방법에 대한 자세한 내용은 Amazon SES Simple Email Service 개발자 안내서의 SESAPIAmazon을 사용하여 개인화된 이메일 보내기를 참조하십시오.
시나리오
이 예제에서는 일련의 Node.js 모듈을 사용하여 이메일 템플릿을 작업합니다. Node.js 모듈은 양식을 사용하여 SES
클라이언트 클래스의 다음 메서드를 사용하여 이메일 템플릿을 만들고 사용합니다. SDK JavaScript
사전 필수 작업
이 예제를 설정하고 실행하려면 먼저 이러한 작업들을 완료해야 합니다.
-
이러한 Node TypeScript 예제를 실행하도록 프로젝트 환경을 설정하고 필수 AWS SDK for JavaScript 모듈과 타사 모듈을 설치합니다. 의 지침을 따르십시오 GitHub
.
-
사용자 자격 증명을 사용하여 공유 구성 파일을 생성합니다. 공유 자격 증명 파일을 제공하는 방법에 대한 자세한 내용은 및 도구 참조 안내서의 공유 구성AWS SDKs 및 자격 증명 파일을 참조하십시오.
중요
이 예제는 () 를 사용하여 ECMAScript6 클라이언트 서비스 개체 및 명령을 가져오거나 내보내는 방법을 보여줍니다. ES6
따라서 Node.js 버전 13.x 이상이 필요합니다. 최신 버전의 Node.js를 다운로드하여 설치하려면 Node.js downloads
를 참조하세요. CommonJS 구문을 사용하려는 경우 JavaScript ES6/CommonJS 구문 단원을 참조하세요.
이메일 템플릿 나열
이 예시에서는 Node.js 모듈을 사용하여 Amazon에서 사용할 이메일 템플릿을 생성합니다SES.
libs
디렉터리를 생성하고 파일 이름이 sesClient.js
인 Node.js 모듈을 생성합니다. 아래 코드를 복사하여 붙여넣으면 Amazon SES 클라이언트 객체가 생성됩니다. Replace REGION
해당 AWS 지역과 함께.
import { SESClient } from "@aws-sdk/client-ses"; // Set the AWS Region. const REGION = "us-east-1"; // Create SES service object. const sesClient = new SESClient({ region: REGION }); export { sesClient };
이 예제 코드는 여기 에서
파일 이름이 ses_listtemplates.js
인 Node.js 모듈을 생성합니다. 필수 클라이언트 및 패키지 설치를 포함하여 위에 표시된 SDK 대로 구성합니다.
SES
클라이언트 클래스의 ListTemplatesCommand
메서드에 대한 파라미터를 전달할 객체를 생성합니다. ListTemplatesCommand
메서드를 호출하려면 파라미터를 전달하여 Amazon SES 클라이언트 서비스 객체를 호출하십시오.
참고
이 예제에서는 필수 AWS Service V3 패키지 클라이언트, V3 명령을 가져와서 사용하고 send
메서드를 async/await 패턴으로 사용합니다. 대신 몇 가지 사소한 변경을 통해 V2 명령을 사용하여 이 예를 생성할 수 있습니다. 세부 정보는 v3 명령 사용을 참조하세요.
import { ListTemplatesCommand } from "@aws-sdk/client-ses"; import { sesClient } from "./libs/sesClient.js"; const createListTemplatesCommand = (maxItems) => new ListTemplatesCommand({ MaxItems: maxItems }); const run = async () => { const listTemplatesCommand = createListTemplatesCommand(10); try { return await sesClient.send(listTemplatesCommand); } catch (err) { console.log("Failed to list templates.", err); return err; } };
예를 실행하려면 명령 프롬프트에서 다음을 입력합니다. Amazon은 템플릿 목록을 SES 반환합니다.
node ses_listtemplates.js
이 예제 코드는 여기에서 찾을 수 있습니다 GitHub
이메일 템플릿 가져오기
이 예시에서는 Node.js 모듈을 사용하여 Amazon에서 사용할 이메일 템플릿을 가져옵니다SES.
libs
디렉터리를 생성하고 파일 이름이 sesClient.js
인 Node.js 모듈을 생성합니다. 아래 코드를 복사하여 붙여넣으면 Amazon SES 클라이언트 객체가 생성됩니다. Replace REGION
해당 AWS 지역과 함께.
import { SESClient } from "@aws-sdk/client-ses"; // Set the AWS Region. const REGION = "us-east-1"; // Create SES service object. const sesClient = new SESClient({ region: REGION }); export { sesClient };
이 예제 코드는 여기에서 찾을 수 있습니다 GitHub
파일 이름이 ses_gettemplate.js
인 Node.js 모듈을 생성합니다. 필수 클라이언트 및 패키지 설치를 포함하여 위에 표시된 SDK 대로 구성합니다.
SES
클라이언트 클래스의 GetTemplateCommand
메서드에 대한 TemplateName
파라미터를 전달할 객체를 생성합니다. GetTemplateCommand
메서드를 호출하려면 파라미터를 전달하여 Amazon SES 클라이언트 서비스 객체를 호출하십시오.
참고
이 예제에서는 필수 AWS Service V3 패키지 클라이언트, V3 명령을 가져와서 사용하고 send
메서드를 async/await 패턴으로 사용합니다. 대신 몇 가지 사소한 변경을 통해 V2 명령을 사용하여 이 예를 생성할 수 있습니다. 세부 정보는 v3 명령 사용을 참조하세요.
참고
Replace TEMPLATE_NAME
반환할 템플릿의 이름과 함께.
import { GetTemplateCommand } from "@aws-sdk/client-ses"; import { getUniqueName } from "@aws-doc-sdk-examples/lib/utils/util-string.js"; import { sesClient } from "./libs/sesClient.js"; const TEMPLATE_NAME = getUniqueName("TemplateName"); const createGetTemplateCommand = (templateName) => new GetTemplateCommand({ TemplateName: templateName }); const run = async () => { const getTemplateCommand = createGetTemplateCommand(TEMPLATE_NAME); try { return await sesClient.send(getTemplateCommand); } catch (caught) { if (caught instanceof Error && caught.name === "MessageRejected") { /** @type { import('@aws-sdk/client-ses').MessageRejected} */ const messageRejectedError = caught; return messageRejectedError; } throw caught; } };
예를 실행하려면 명령 프롬프트에서 다음을 입력합니다. Amazon은 템플릿 세부 정보를 SES 반환합니다.
node ses_gettemplate.js
이 예제 코드는 여기에서 찾을 수 있습니다 GitHub
이메일 템플릿 생성
이 예시에서는 Node.js 모듈을 사용하여 Amazon에서 사용할 이메일 템플릿을 생성합니다SES.
libs
디렉터리를 생성하고 파일 이름이 sesClient.js
인 Node.js 모듈을 생성합니다. 아래 코드를 복사하여 붙여넣으면 Amazon SES 클라이언트 객체가 생성됩니다. Replace REGION
해당 AWS 지역과 함께.
import { SESClient } from "@aws-sdk/client-ses"; // Set the AWS Region. const REGION = "us-east-1"; // Create SES service object. const sesClient = new SESClient({ region: REGION }); export { sesClient };
이 예제 코드는 여기에서 찾을 수 있습니다 GitHub
파일 이름이 ses_createtemplate.js
인 Node.js 모듈을 생성합니다. 필수 클라이언트 및 패키지 설치를 포함하여 위에 표시된 SDK 대로 구성합니다.
TemplateName
, HtmlPart
, SubjectPart
및 TextPart
를 포함하여 SES
클라이언트 클래스의 CreateTemplateCommand
메서드에 대한 파라미터를 전달할 객체를 생성합니다. CreateTemplateCommand
메서드를 호출하려면 파라미터를 전달하여 Amazon SES 클라이언트 서비스 객체를 호출하십시오.
참고
이 예제에서는 필수 AWS Service V3 패키지 클라이언트, V3 명령을 가져와서 사용하고 send
메서드를 async/await 패턴으로 사용합니다. 대신 몇 가지 사소한 변경을 통해 V2 명령을 사용하여 이 예를 생성할 수 있습니다. 세부 정보는 v3 명령 사용을 참조하세요.
참고
Replace TEMPLATE_NAME
새 템플릿의 이름과 함께 HtmlPart
HTML태그가 지정된 이메일 내용 포함 SubjectPart
이메일의 제목과 함께
import { CreateTemplateCommand } from "@aws-sdk/client-ses"; import { sesClient } from "./libs/sesClient.js"; import { getUniqueName } from "@aws-doc-sdk-examples/lib/utils/util-string.js"; const TEMPLATE_NAME = getUniqueName("TestTemplateName"); const createCreateTemplateCommand = () => { return new CreateTemplateCommand({ /** * The template feature in Amazon SES is based on the Handlebars template system. */ Template: { /** * The name of an existing template in Amazon SES. */ TemplateName: TEMPLATE_NAME, HtmlPart: ` <h1>Hello, {{contact.firstName}}!</h1> <p> Did you know Amazon has a mascot named Peccy? </p> `, SubjectPart: "Amazon Tip", }, }); }; const run = async () => { const createTemplateCommand = createCreateTemplateCommand(); try { return await sesClient.send(createTemplateCommand); } catch (err) { console.log("Failed to create template.", err); return err; } };
예를 실행하려면 명령 프롬프트에서 다음을 입력합니다. 템플릿이 Amazon에 추가되었습니다SES.
node ses_createtemplate.js
이 예제 코드는 여기에서 찾을 수 있습니다 GitHub
이메일 템플릿 업데이트
이 예시에서는 Node.js 모듈을 사용하여 Amazon에서 사용할 이메일 템플릿을 생성합니다SES.
libs
디렉터리를 생성하고 파일 이름이 sesClient.js
인 Node.js 모듈을 생성합니다. 아래 코드를 복사하여 붙여넣으면 Amazon SES 클라이언트 객체가 생성됩니다. Replace REGION
해당 AWS 지역과 함께.
import { SESClient } from "@aws-sdk/client-ses"; // Set the AWS Region. const REGION = "us-east-1"; // Create SES service object. const sesClient = new SESClient({ region: REGION }); export { sesClient };
이 예제 코드는 여기에서 찾을 수 있습니다 GitHub
파일 이름이 ses_updatetemplate.js
인 Node.js 모듈을 생성합니다. 필수 클라이언트 및 패키지 설치를 포함하여 위에 표시된 SDK 대로 구성합니다.
SES
클라이언트 클래스의 UpdateTemplateCommand
메서드에 전달된 필수 TemplateName
파라미터와 함께 템플릿에서 업데이트하려는 Template
파라미터 값을 전달할 객체를 생성합니다. UpdateTemplateCommand
메서드를 호출하려면 Amazon SES 서비스 객체를 호출하고 파라미터를 전달하십시오.
참고
이 예제에서는 필수 AWS Service V3 패키지 클라이언트와 V3 명령을 가져와서 사용하고 send
메서드를 async/await 패턴으로 사용합니다. 대신 몇 가지 사소한 변경을 통해 V2 명령을 사용하여 이 예를 생성할 수 있습니다. 세부 정보는 v3 명령 사용을 참조하세요.
참고
Replace TEMPLATE_NAME
템플릿 이름 및 HTML_PART
HTML태그가 지정된 이메일 내용과 함께
import { UpdateTemplateCommand } from "@aws-sdk/client-ses"; import { getUniqueName } from "@aws-doc-sdk-examples/lib/utils/util-string.js"; import { sesClient } from "./libs/sesClient.js"; const TEMPLATE_NAME = getUniqueName("TemplateName"); const HTML_PART = "<h1>Hello, World!</h1>"; const createUpdateTemplateCommand = () => { return new UpdateTemplateCommand({ Template: { TemplateName: TEMPLATE_NAME, HtmlPart: HTML_PART, SubjectPart: "Example", TextPart: "Updated template text.", }, }); }; const run = async () => { const updateTemplateCommand = createUpdateTemplateCommand(); try { return await sesClient.send(updateTemplateCommand); } catch (err) { console.log("Failed to update template.", err); return err; } };
예를 실행하려면 명령 프롬프트에서 다음을 입력합니다. Amazon은 템플릿 세부 정보를 SES 반환합니다.
node ses_updatetemplate.js
이 예제 코드는 여기에서 찾을 수 있습니다 GitHub
이메일 템플릿 삭제
이 예시에서는 Node.js 모듈을 사용하여 Amazon에서 사용할 이메일 템플릿을 생성합니다SES.
libs
디렉터리를 생성하고 파일 이름이 sesClient.js
인 Node.js 모듈을 생성합니다. 아래 코드를 복사하여 붙여넣으면 Amazon SES 클라이언트 객체가 생성됩니다. Replace REGION
해당 AWS 지역과 함께.
import { SESClient } from "@aws-sdk/client-ses"; // Set the AWS Region. const REGION = "us-east-1"; // Create SES service object. const sesClient = new SESClient({ region: REGION }); export { sesClient };
이 예제 코드는 여기에서 찾을 수 있습니다 GitHub
파일 이름이 ses_deletetemplate.js
인 Node.js 모듈을 생성합니다. 필수 클라이언트 및 패키지 설치를 포함하여 위에 표시된 SDK 대로 구성합니다.
SES
클라이언트 클래스의 DeleteTemplateCommand
메서드에 필수 TemplateName
파라미터를 전달할 객체를 생성합니다. DeleteTemplateCommand
메서드를 호출하려면 Amazon SES 서비스 객체를 호출하고 파라미터를 전달하십시오.
참고
이 예제에서는 필수 AWS Service V3 패키지 클라이언트와 V3 명령을 가져와서 사용하고 send
메서드를 async/await 패턴으로 사용합니다. 대신 몇 가지 사소한 변경을 통해 V2 명령을 사용하여 이 예를 생성할 수 있습니다. 세부 정보는 v3 명령 사용을 참조하세요.
참고
Replace TEMPLATE_NAME
삭제할 템플릿의 이름을 포함합니다.
import { DeleteTemplateCommand } from "@aws-sdk/client-ses"; import { getUniqueName } from "@aws-doc-sdk-examples/lib/utils/util-string.js"; import { sesClient } from "./libs/sesClient.js"; const TEMPLATE_NAME = getUniqueName("TemplateName"); const createDeleteTemplateCommand = (templateName) => new DeleteTemplateCommand({ TemplateName: templateName }); const run = async () => { const deleteTemplateCommand = createDeleteTemplateCommand(TEMPLATE_NAME); try { return await sesClient.send(deleteTemplateCommand); } catch (err) { console.log("Failed to delete template.", err); return err; } };
예를 실행하려면 명령 프롬프트에서 다음을 입력합니다. Amazon은 템플릿 세부 정보를 SES 반환합니다.
node ses_deletetemplate.js
이 예제 코드는 여기에서 찾을 수 있습니다 GitHub