第20天:使用 Python 和 SES 从 AWS Lambda 发送 HTML 邮件

发布: (2026年1月17日 GMT+8 00:00)
1 分钟阅读
原文: Dev.to

Source: Dev.to

Day 20:使用 Python 与 SES 从 AWS Lambda 发送 HTML 邮件的封面图片

超越纯文本

欢迎来到第 20 天。SNS 适合短信或内部警报,但面向用户的邮件需要 HTML。于是 Amazon SES 登场。

前置条件

  • 在 SES 控制台(Identities)中验证你的邮箱。
  • 为你的 Lambda IAM 角色添加 ses:SendEmail 权限。

代码(Python)

与只接受字符串的 SNS 不同,SES 需要一个字典结构来描述 MIME 类型。

client.send_email(
    Source='me@example.com',
    Destination={'ToAddresses': ['me@example.com']},
    Message={
        'Subject': {'Data': 'My Subject'},
        'Body': {
            'Html': {'Data': '''
## Hello World
'''},          # HTML part
            'Text': {'Data': 'Hello World'}  # Plain‑text fallback
        }
    }
)

小技巧

在邮件模板中使用内联 CSS,因为 Gmail 和 Outlook 往往会剥离外部样式表。

SES 邮件示例

Back to Blog

相关文章

阅读更多 »