在 Amazon SES 中使用电子邮件模板 - AWS SDK for JavaScript

帮助我们改进AWS SDK for JavaScript版本 3 (V3) 文档,方法是使用反馈链接,或者在上创建议题或拉取请求GitHub.

这些区域有:AWS SDK for JavaScriptV3 API 参考指南详细描述了所有的 API 操作AWS SDK for JavaScript版本 3 (V3)。

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

在 Amazon SES 中使用电子邮件模板

JavaScript code example that applies to Node.js execution

此 Node.js 代码示例演示:

  • 如何获取所有电子邮件模板的列表。

  • 如何检索和更新电子邮件模板。

  • 如何创建和删除电子邮件模板。

Amazon SES 使您能够使用电子邮件模板发送个性化的电子邮件。有关如何在 Amazon SES 中创建和使用电子邮件模板的详细信息,请参阅使用 Amazon SES API 发送个性化电子邮件在《Amazon Simple Email Service 开发人员指南》中。

场景

在本示例中,您使用一系列 Node.js 模块来处理电子邮件模板。Node.js 模块使用 JavaScript 开发工具包来创建和使用电子邮件模板。SES客户端类:

前提任务

要设置和运行此示例,您必须先完成以下任务:

  • 设置项目环境以运行这些 Node TypeScript 示例,然后安装所需的AWS SDK for JavaScript和第三方模块。按照上的说明操作GitHub.

重要

这些示例演示了如何使用 ECMASCRIPT6 (ES6) 导入/导出客户端服务对象和命令。

列出电子邮件模板

在本示例中,使用 Node.js 模块创建用于 Amazon SES 的电子邮件模板。

创建libs目录,并创建文件名为的 Node.js 模块sesClient.js. 将以下代码复制并粘贴到其中,这将创建 Amazon SES 客户端对象。Replace领域和您的AWS区域。

import { SESClient } from "@aws-sdk/client-ses"; // Set the AWS Region. const REGION = "REGION"; //e.g. "us-east-1" // Create SES service object. const sesClient = new SESClient({ region: REGION }); export { sesClient };

可以找到这个示例代码GitHub 上的这里.

创建文件名为 ses_listtemplates.js 的 Node.js 模块。如前所示配置 SDK,包括安装所需的客户端和软件包。

创建对象,为 SES 客户端类的 ListTemplatesCommand 方法传递参数。调用ListTemplatesCommand方法中,调用 Amazon SES 客户端服务对象并传递参数。

注意

此示例导入并使用必需的AWS服务 V3 包客户端、V3 命令,并使用send方法采用异步/等待模式。您可以使用 V2 命令创建此示例,而是通过进行一些小的更改。有关详细信息,请参阅 使用 V3 命令

注意

ReplaceITEMS_COUNT并有最大要返回的模板数量。值必须至少为 1,最大为 10。

// Import required AWS SDK clients and commands for Node.js import { SESClient, ListTemplatesCommand } from "@aws-sdk/client-ses"; import { sesClient } from "./libs/sesClient.js"; // Set the parameters const params = { MaxItems: "ITEMS_COUNT" }; //ITEMS_COUNT const run = async () => { try { const data = await sesClient.send(new ListTemplatesCommand({ params })); console.log("Success.", data); return data; // For unit tests. } catch (err) { console.log("Error", err.stack); } }; run();

要运行示例,请在命令提示符处输入以下内容。Amazon SES 返回模板列表。

node ses_listtemplates.js

可以找到这个示例代码GitHub 上的这里.

获取电子邮件模板

在本示例中,使用 Node.js 模块获取用于 Amazon SES 的电子邮件模板。

创建libs目录,并创建文件名为的 Node.js 模块sesClient.js. 将以下代码复制并粘贴到其中,这将创建 Amazon SES 客户端对象。Replace领域和您的AWS区域。

import { SESClient } from "@aws-sdk/client-ses"; // Set the AWS Region. const REGION = "REGION"; //e.g. "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服务 V3 包客户端、V3 命令,并使用send方法采用异步/等待模式。您可以使用 V2 命令创建此示例,而是通过进行一些小的更改。有关详细信息,请参阅 使用 V3 命令

注意

ReplaceTEMPLATE_NAME包含要返回的模板的名称。

// Import required AWS SDK clients and commands for Node.js import { GetTemplateCommand } from "@aws-sdk/client-ses"; import { sesClient } from "./libs/sesClient.js"; // Set the parameters const params = { TemplateName: "TEMPLATE_NAME" }; const run = async () => { try { const data = await sesClient.send(new GetTemplateCommand(params)); console.log("Success.", data); return data; // For unit tests. } catch (err) { console.log("Error", err.stack); } }; run();

要运行示例,请在命令提示符处输入以下内容。Amazon SES 返回模板详细信息。

node ses_gettemplate.js

可以找到这个示例代码GitHub 上的这里.

创建电子邮件模板

在本示例中,使用 Node.js 模块创建用于 Amazon SES 的电子邮件模板。

创建libs目录,并创建文件名为的 Node.js 模块sesClient.js. 将以下代码复制并粘贴到其中,这将创建 Amazon SES 客户端对象。Replace领域和您的AWS区域。

import { SESClient } from "@aws-sdk/client-ses"; // Set the AWS Region. const REGION = "REGION"; //e.g. "us-east-1" // Create SES service object. const sesClient = new SESClient({ region: REGION }); export { sesClient };

可以找到这个示例代码GitHub 上的这里.

创建文件名为 ses_createtemplate.js 的 Node.js 模块。如前所示配置 SDK,包括安装所需的客户端和软件包。

创建一个对象来为 SES 客户端类的 CreateTemplateCommand 方法传递参数,其中包括 TemplateNameHtmlPartSubjectPartTextPart。调用CreateTemplateCommand方法中,调用 Amazon SES 客户端服务对象并传递参数。

注意

此示例导入并使用必需的AWS服务 V3 包客户端、V3 命令,并使用send方法采用异步/等待模式。您可以使用 V2 命令创建此示例,而是通过进行一些小的更改。有关详细信息,请参阅 使用 V3 命令

注意

此示例导入并使用必需的AWS服务 V3 包客户端、V3 命令,并使用send方法采用异步/等待模式。您可以使用 V2 命令创建此示例,而是通过进行一些小的更改。有关详细信息,请参阅 使用 V3 命令

注意

ReplaceTEMPLATE_NAME带有新模板的名称,HTML_CONTENT使用电子邮件的 HTML 标记内容,主题包含电子邮件的主题,以及TEXT_CONTENT使用电子邮件的文本。

// Import required AWS SDK clients and commands for Node.js import { CreateTemplateCommand } from "@aws-sdk/client-ses"; import { sesClient } from "./libs/sesClient.js"; // Create createTemplate params const params = { Template: { TemplateName: "TEMPLATE_NAME", //TEMPLATE_NAME HtmlPart: "HTML_CONTENT", SubjectPart: "SUBJECT", TextPart: "TEXT_CONTENT", }, }; const run = async () => { try { const data = await sesClient.send(new CreateTemplateCommand(params)); console.log( "Success", data ); return data; // For unit tests. } catch (err) { console.log("Error", err.stack); } }; run();

要运行示例,请在命令提示符处输入以下内容。模板将添加到 Amazon SES。

node ses_createtemplate.js

可以找到这个示例代码GitHub 上的这里.

更新电子邮件模板

在本示例中,使用 Node.js 模块创建用于 Amazon SES 的电子邮件模板。

创建libs目录,并创建文件名为的 Node.js 模块sesClient.js. 将以下代码复制并粘贴到其中,这将创建 Amazon SES 客户端对象。Replace领域和您的AWS区域。

import { SESClient } from "@aws-sdk/client-ses"; // Set the AWS Region. const REGION = "REGION"; //e.g. "us-east-1" // Create SES service object. const sesClient = new SESClient({ region: REGION }); export { sesClient };

可以找到这个示例代码GitHub 上的这里.

创建文件名为 ses_updatetemplate.js 的 Node.js 模块。如前所示配置 SDK,包括安装所需的客户端和软件包。

创建一个对象来传递您在模板中要更新的 Template 参数值,并将必需的 TemplateName 参数传递到 SES 客户端类的 UpdateTemplateCommand 方法。调用UpdateTemplateCommand方法中,调用 Amazon SES 服务对象并传递参数。

注意

此示例导入并使用必需的AWS服务 V3 包客户端、V3 命令,并使用send方法采用异步/等待模式。您可以使用 V2 命令创建此示例,而是通过进行一些小的更改。有关详细信息,请参阅 使用 V3 命令

注意

ReplaceTEMPLATE_NAME使用模板名称,HTML_CONTENT使用电子邮件的 HTML 标记内容,主题包含电子邮件的主题,以及TEXT_CONTENT使用电子邮件的文本。

// Import required AWS SDK clients and commands for Node.js import { UpdateTemplateCommand } from "@aws-sdk/client-ses"; import { sesClient } from "./libs/sesClient.js"; // Set the parameters const params = { Template: { TemplateName: "TEMPLATE_NAME", //TEMPLATE_NAME HtmlPart: "HTML_CONTENT", //HTML_CONTENT; i.e., HTML content in the email SubjectPart: "SUBJECT_LINE", //SUBJECT_LINE; i.e., email subject line TextPart: "TEXT_CONTENT", //TEXT_CONTENT; i.e., body of email }, }; const run = async () => { try { const data = await sesClient.send(new UpdateTemplateCommand(params)); console.log("Success.", data); return data; // For unit tests. } catch (err) { console.log("Error", err.stack); } }; run();

要运行示例,请在命令提示符处输入以下内容。Amazon SES 返回模板详细信息。

node ses_updatetemplate.js

可以找到这个示例代码GitHub 上的这里.

删除电子邮件模板

在本示例中,使用 Node.js 模块创建用于 Amazon SES 的电子邮件模板。

创建libs目录,并创建文件名为的 Node.js 模块sesClient.js. 将以下代码复制并粘贴到其中,这将创建 Amazon SES 客户端对象。Replace领域和您的AWS区域。

import { SESClient } from "@aws-sdk/client-ses"; // Set the AWS Region. const REGION = "REGION"; //e.g. "us-east-1" // Create SES service object. const sesClient = new SESClient({ region: REGION }); export { sesClient };

可以找到这个示例代码GitHub 上的这里.

创建文件名为 ses_deletetemplate.js 的 Node.js 模块。如前所示配置 SDK,包括安装所需的客户端和软件包。

创建对象,将必需的 TemplateName 参数传递到 SES 客户端类的 DeleteTemplateCommand 方法。调用DeleteTemplateCommand方法中,调用 Amazon SES 服务对象并传递参数。

注意

此示例导入并使用必需的AWS服务 V3 包客户端、V3 命令,并使用send方法采用异步/等待模式。您可以使用 V2 命令创建此示例,而是通过进行一些小的更改。有关详细信息,请参阅 使用 V3 命令

注意

ReplaceTEMPLATE_NAME模板的名称将删除。

// Import required AWS SDK clients and commands for Node.js import { DeleteTemplateCommand } from "@aws-sdk/client-ses"; import { sesClient } from "./libs/sesClient.js"; // Set the parameters const params = { TemplateName: "TEMPLATE_NAME" }; const run = async () => { try { const data = await sesClient.send(new DeleteTemplateCommand(params)); console.log("Success.", data); return data; // For unit tests. } catch (err) { console.log("Error", err.stack); } }; run();

要运行示例,请在命令提示符处输入以下内容。Amazon SES 返回模板详细信息。

node ses_deletetemplate.js

可以找到这个示例代码GitHub 上的这里.