发送重复的邮件可能会影响邮件接收者的体验,因此在使用 Amazon SES 发送邮件时需要避免发送重复的邮件。在 SES 中可以通过使用消息 ID 来检查是否已经发送过该邮件。
以下是示例代码,可以用来检查消息 ID 是否已经在之前的发送中使用过:
import boto3 from botocore.exceptions import ClientError
def is_duplicate(ses_client, message_id): try: response = ses_client.get_send_quota() except ClientError as e: print(e.response['Error']['Message']) return False else: sent_message_ids = response.get('SentLast24Hours', []) if message_id in sent_message_ids: return True return False
ses = boto3.client('ses', region_name='us-west-2') message_id = 'example_message_id'
if is_duplicate(ses, message_id): print('Message has already been sent') else: # send email using Amazon SES pass # replace with actual email sending code