确认 AWS SES 的身份验证信息是否正确,包括用户密钥和密钥 ID。
确认 IAM 用户或角色是否具有必要的 AmazonSESFullAccess 权限。
检查发送的邮件是否符合 AWS SES 的限制和要求,例如邮件大小、邮件地址等。
尝试将 AWS SES 发送邮件的代码放在 AWS 虚拟机或 EC2 实例中运行,并确保已使用 IAM 用户或角色进行身份验证。
示例代码:
import boto3 from botocore.exceptions import ClientError
AWS_REGION = 'us-west-2' SENDER = 'sender@example.com' RECIPIENT = 'recipient@example.com' AWS_ACCESS_KEY_ID = 'YOUR_ACCESS_KEY' AWS_SECRET_ACCESS_KEY = 'YOUR_SECRET_KEY'
client = boto3.client('ses', region_name=AWS_REGION, aws_access_key_id=AWS_ACCESS_KEY_ID, aws_secret_access_key=AWS_SECRET_ACCESS_KEY)
try: response = client.send_email( Destination={ 'ToAddresses': [ RECIPIENT ] }, Message={ 'Body': { 'Text': { 'Charset': 'UTF-8', 'Data': 'This is a test email.' } }, 'Subject': { 'Charset': 'UTF-8', 'Data': 'Test Email' } }, Source=SENDER ) except ClientError as e: print(e.response['Error']['Message']) else: print("Email sent! Message ID:"), print(response['MessageId'])