Node.js 如何验证消息是否在AWS SNS中传递?
这是我的lambda函数。仅返回消息id和请求id。但是如何验证消息是否已传递Node.js 如何验证消息是否在AWS SNS中传递?,node.js,amazon-web-services,aws-lambda,Node.js,Amazon Web Services,Aws Lambda,这是我的lambda函数。仅返回消息id和请求id。但是如何验证消息是否已传递 const AWS = require('aws-sdk'); AWS.config.update({ accessKeyId: 'xxxx', secretAccessKey: 'xxxx', region: 'xxxx' }); c
const AWS = require('aws-sdk');
AWS.config.update({
accessKeyId: 'xxxx',
secretAccessKey: 'xxxx',
region: 'xxxx'
});
const mobile = 'xxxxxxx';
const sns = new AWS.SNS();
const confirmUpload = (callback) => {
sns.publish({
Message: 'Test From Admin side',
Subject: 'Admin',
MessageStructure: 'string',
PhoneNumber: mobile
}, (err, result) => {
if (err) callback(false, err);
else callback(true, result);
});
};
exports.handler = (event,context, callback) => {
confirmUpload((st, data) =>{
if(st){
let record = {
"data": JSON.stringify(data),
"event": event,
"context": context
};
callback(null, (record));
} else{
callback(data, "not send");
}
});
};
下面是运行lambda函数时的响应
"{\"ResponseMetadata\":{\"RequestId\":\"e8a07b26-d793-58e1-a529-2d7ac17aca9x\"},\"MessageId\":\"b8ecbcac-9f83-5bca-a9eb-eaf0896a69b\"}",
如果在主题上启用,则可以使用邮件ID字段跟踪已发布邮件的传递状态
配置邮件传递状态属性后,记录
对于发送到主题的消息,条目将被发送到CloudWatch日志
订阅了Amazon SNS端点。记录邮件传递状态
有助于提供更好的操作洞察力,例如:
- 了解消息是否已传递到Amazon SNS端点
- 识别从Amazon SNS端点发送到Amazon SNS的响应
- 确定消息驻留时间(发布时间戳与发送到Amazon SNS端点之前的时间)
您也可能喜欢AWS提供的SNS。您可以启用SNS死信队列来捕获无法传递给订阅者的消息:
请帮助我解决这个问题