Man*_*uru 3 javascript amazon-web-services node.js aws-sdk
AWS = require('aws-sdk');
AWS.config.region = 'eu-west-1';
ses = new AWS.SES();
var params = {};
return ses.sendEmail(params, function (err, data) {
console.log('----->sending email')
}).promise().then((data) => {
console.log('---->sending promise')
}).catch((err) => {
console.log('----->am in error')
console.log(err)
})
Run Code Online (Sandbox Code Playgroud)
有人可以帮我上面的代码承诺被触发两次.
我应该低于
----->发送电子邮件
---->发送承诺
但我得到了
----->发送电子邮件
---->发送承诺
----->发送电子邮件
看起来您提供了回调函数和使用promise方法.
实际上,这意味着您有两个不同的函数在请求完成时执行.
您可以只使用promise方法:
ses.sendEmail(params).promise().then((data) => {
console.log('Email was sent')
}).catch((err) => {
console.log('There was an error')
})
Run Code Online (Sandbox Code Playgroud)
或者您可以使用回调方法:
try {
const data = await ses.sendEmail(params).promise();
console.log('Email was sent')
} catch(err) {
console.log('There was an error')
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
555 次 |
| 最近记录: |