【发布时间】:2017-05-17 00:53:13
【问题描述】:
我正在使用 Ajax 调用本身调用 AWS 的 NodeJS/ExpressJS 发布方法,并且我希望将 AWS 返回状态返回给浏览器。毫不奇怪,“res.status(200).send('Success!');”在 AWS 本身甚至被调用之前调用下面的 sn-p 的末尾,因此没有意义。但不知道如何从 AWS 的匿名返回函数中获取原始 Ajax “res”对象,所以我可以调用 .status 和 .send 。看起来很简单,但一直无法弄清楚。
router.post('/notification', function(req, res) {
var config = req.app.get('config');
var sns = new AWS.SNS({ region: config.AWS_REGION});
var snsMessage = 'Hello world!';
sns.publish({ TopicArn: config.NEW_SIGNUP_TOPIC,
Message: snsMessage }, function(err, data) {
if (err) {
console.log('Error publishing SNS message: ' + err);
} else {
// How to get the original res object here, so I can call
// res.status(200).send('It worked!') here
console.log('It worked!');
}
});
// The following line returns status to the original ajax post call
// before AWS is even called.
res.status(200).send('Success!'); //
});
【问题讨论】:
标签: node.js amazon-web-services