当出现“AWS SES 535身份验证凭据无效”错误时,通常是由于AWS SES凭证配置有误导致的。以下是一个解决方法的示例代码:
import boto3
def send_email(sender, recipient, subject, body):
# 定义AWS凭证
AWS_ACCESS_KEY_ID = 'YOUR_ACCESS_KEY_ID'
AWS_SECRET_ACCESS_KEY = 'YOUR_SECRET_ACCESS_KEY'
# 创建SES客户端对象
client = boto3.client('ses', aws_access_key_id=AWS_ACCESS_KEY_ID, aws_secret_access_key=AWS_SECRET_ACCESS_KEY, region_name='us-west-2')
# 发送邮件
response = client.send_email(
Source=sender,
Destination={
'ToAddresses': [
recipient,
],
},
Message={
'Subject': {
'Data': subject,
},
'Body': {
'Text': {
'Data': body,
},
},
},
)
print("Email sent! Message ID:"),
print(response['MessageId'])
# 调用发送邮件函数
send_email('sender@example.com', 'recipient@example.com', 'Test Email', 'Hello, this is a test email.')
在上述代码中,你需要将YOUR_ACCESS_KEY_ID
和YOUR_SECRET_ACCESS_KEY
替换为你自己的AWS访问密钥。另外,根据你的配置,你可能还需要更改region_name
参数,以正确指定AWS SES的区域。
请确保提供的凭证是有效且具有正确的SES权限。如果你仍然遇到问题,请检查你的凭证是否正确,并确保它们具有适当的SES权限和访问级别。