boto3.client('ses').send_email(
Source = email_from,
Destination={
'ToAddresses': [
email_to,
]
},
Message={
'Subject': {
'Data': emaiL_subject
},
'Body': {
'Text': {
'Data': email_body.format(user_password)
}
}
}
)
我正在使用 boto3 SES,通过 lambda 函数执行上述代码后,出现以下错误:
Could not connect to the endpoint URL: "https://email.ap-southeast-1.amazonaws.com/
对于 Lambda 函数,我的区域是ap-southeast-1
任何帮助都将得到认可
在撰写本文时,AWS 仅为 6 个区域提供 SES 服务:
- 美国东部(弗吉尼亚北部(
us-east-1
- 美国西部(俄勒冈(
us-west-2
- 欧洲(爱尔兰(
eu-west-1
- 美联社(孟买(
ap-south-1
- 美联社(悉尼(
ap-southeast-2
- 欧洲(法兰克福(
eu-central-1
使用上述方法之一作为您的AWS_REGION
client = boto3.client('ses',region_name=AWS_REGION)
注意:在 AWS 网站上查找最新的区域列表。
问题由硬编码区域字符串"us-east-1">解决
现在我将客户端创建为:
boto3.client('ses', 'us-east-1')
我认为这是由于新加坡地区没有SES。
在使用https://status.aws.amazon.com/之前,您始终可以检查 AWS 服务的状态及其在不同区域的可用性。