本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用检索消息内容 AWS Lambda
配置用于管理 Amazon 电子邮件流的 AWS Lambda 函数后 WorkMail,您可以访问使用 Lambda 处理的电子邮件的全部内容。有关开始使用亚马逊版 Lambda 的更多信息 WorkMail,请参阅。为 Amazon AWS Lambda 进行配置 WorkMail
要访问电子邮件的全部内容,请使用 Amazon WorkMail 消息流中的GetRawMessageContent
操作API。在调用时传递给您的 Lambda 函数的电子邮件 ID 会将请求发送到。API然后,使用电子邮件的全部MIME内容进行API回复。有关更多信息,请参阅《亚马逊 WorkMail API参考》中的 “亚马逊 WorkMail 消息流”。
以下示例显示了使用 Python 运行时环境的 Lambda 函数如何检索完整的邮件内容。
提示
如果您首先从 AWS Serverless Application Repository 向您的账户部署 Amazon WorkMail Hello World Lambda 函数
import boto3 import email import os def email_handler(event, context): workmail = boto3.client('workmailmessageflow', region_name=os.environ["
AWS_REGION
"]) msg_id = event['messageId'] raw_msg = workmail.get_raw_message_content(messageId=msg_id
) parsed_msg = email.message_from_bytes(raw_msg['messageContent'].read()) print(parsed_msg)
有关分析传输中邮件内容的方法的更多详细示例,请参阅上的amazon-workmail-lambda-templates
注意
您只能使用 Amazon WorkMail 消息流API来访问传输中的电子邮件。您只能在邮件发送或接收后 24 小时内访问。要以编程方式访问用户邮箱中的邮件,请使用亚马逊支持的其他协议之一 WorkMail,例如IMAP或 Exchange Web Services (EWS)。