要停止 AWS SNS 传送消息,可以使用 AWS SDK 提供的 API 方法。以下是使用 Node.js SDK 的代码示例:
const AWS = require('aws-sdk');
AWS.config.update({ region: 'us-east-1' }); // 根据你的实际需求设置正确的区域
const sns = new AWS.SNS();
const topicArn = 'arn:aws:sns:us-east-1:123456789012:my-topic'; // 替换为你的 SNS 主题 ARN
// 停止传送消息
const stopDelivery = async () => {
try {
await sns.setTopicAttributes({
AttributeName: 'EffectiveDeliveryPolicy',
TopicArn: topicArn,
AttributeValue: '{"healthyRetryPolicies": []}'
}).promise();
console.log('成功停止消息传送');
} catch (error) {
console.error('停止消息传送失败:', error);
}
}
stopDelivery();
请注意,上述代码中的 topicArn
需要替换为你的 SNS 主题的 ARN。此外,你还需要根据你的 AWS 配置设置正确的区域。
此代码示例使用 setTopicAttributes
方法来更新 SNS 主题的 EffectiveDeliveryPolicy
属性,将其设置为一个空数组,以停止消息传送。