Há mais exemplos de AWS SDK disponíveis no repositório AWSDoc SDK Examples GitHub .
As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Obter um modelo existente de e-mail do Amazon SES usando um AWS SDK
Os exemplos de código a seguir mostram como obter um modelo existente de e-mail do Amazon SES.
Exemplos de ações são trechos de código de programas maiores e devem ser executados em contexto. É possível ver essa ação no contexto no seguinte exemplo de código:
- C++
-
- SDK for C++
-
//! Get a template's attributes.
/*!
\param templateName: The name for the template.
\param clientConfiguration: AWS client configuration.
\return bool: Function succeeded.
*/
bool AwsDoc::SES::getTemplate(const Aws::String &templateName,
const Aws::Client::ClientConfiguration &clientConfiguration) {
Aws::SES::SESClient sesClient(clientConfiguration);
Aws::SES::Model::GetTemplateRequest getTemplateRequest;
getTemplateRequest.SetTemplateName(templateName);
Aws::SES::Model::GetTemplateOutcome outcome = sesClient.GetTemplate(
getTemplateRequest);
if (outcome.IsSuccess()) {
std::cout << "Successfully got template." << std::endl;
}
else {
std::cerr << "Error getting template. " << outcome.GetError().GetMessage()
<< std::endl;
}
return outcome.IsSuccess();
}
- JavaScript
-
- SDK para JavaScript (v3)
-
import { GetTemplateCommand } from "@aws-sdk/client-ses";
import { getUniqueName } from "@aws-sdk-examples/libs/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 (err) {
console.log("Failed to get email template.", err);
return err;
}
};
- Python
-
- SDK para Python (Boto3)
-
class SesTemplate:
"""Encapsulates Amazon SES template functions."""
def __init__(self, ses_client):
"""
:param ses_client: A Boto3 Amazon SES client.
"""
self.ses_client = ses_client
self.template = None
self.template_tags = set()
def _extract_tags(self, subject, text, html):
"""
Extracts tags from a template as a set of unique values.
:param subject: The subject of the email.
:param text: The text version of the email.
:param html: The html version of the email.
"""
self.template_tags = set(re.findall(TEMPLATE_REGEX, subject + text + html))
logger.info("Extracted template tags: %s", self.template_tags)
def get_template(self, name):
"""
Gets a previously created email template.
:param name: The name of the template to retrieve.
:return: The retrieved email template.
"""
try:
response = self.ses_client.get_template(TemplateName=name)
self.template = response["Template"]
logger.info("Got template %s.", name)
self._extract_tags(
self.template["SubjectPart"],
self.template["TextPart"],
self.template["HtmlPart"],
)
except ClientError:
logger.exception("Couldn't get template %s.", name)
raise
else:
return self.template