发送邮件时出现AWS SES服务问题"/>
使用lambda发送邮件时出现AWS SES服务问题
我有一个基本的AWS账户,我们在其中部署了lambda函数。此外,我们还在lambda函数中配置了AWS SES服务以发送电子邮件(我们的SES服务也已移出沙箱并增加了限制)。
[大约我们每分钟发送两封电子邮件,但是我们发现很少收到邮件,但是大多数时候我们没有收到任何电子邮件。
此外,我们尝试在两个区域中部署应用程序,但发现没有成功。
样本代码
const AWS = require('aws-sdk');
//AWS Options
const options = {
region: 'us-east-1',
// accessKeyId not required because of server less app (SWS policy added in role)
// secretAccessKey not required because of server less app (SWS policy added in role)
}
const ses = new AWS.SES(options);
const sendEmail = (sender, receivers, subject, content) => {
console.log("Sending From", sender);
console.log("REceiver Email", receivers);
const promise = new Promise((resolve, reject) => {
ses.sendEmail({
Source: sender,
Destination: {
ToAddresses: receivers
},
Message: {
Subject: {
Data: subject
},
Body: {
Html: {
Data: content
}
}
}
}, (err, data) => {
if (err) {
console.log(err)
reject(err)
}
resolve(data)
});
});
return promise
};
回答如下:我认为这里发生了几件事:
- 返回承诺的JavaScript函数必须为
async
- 您的Lambda函数可能正在超时(默认值为3秒)
更多推荐
使用lambda发送邮件时出现AWS SES服务问题
发布评论