java - 使用 java 从 aws 获取主题 ARN

标签 java amazon-web-services amazon-sns

有人可以告诉我如何使用 java 中的 AmazonSQSClient 从 SNS 获取确切的主题 arn 吗?

我想在以下 PutMetricAlarm 请求中使用它

.withAlarmActions(awsClient.getAmazonSNSClient(). ?)

最佳答案

您可以使用以下代码获取所有 SNS 主题的列表。您可以调用 Topic::getTopicArn() 以字符串形式获取 ARN。

    AmazonSNSClient snsClient = new AmazonSNSClient(new DefaultAWSCredentialsProviderChain());
    snsClient.setRegion(Region.getRegion(Regions.US_WEST_2));

    List<Topic> topicArns = new ArrayList<>();

    ListTopicsResult result = snsClient.listTopics();
    topicArns.addAll(result.getTopics());

    while (result.getNextToken() != null) {
        result = snsClient.listTopics(result.getNextToken());
        topicArns.addAll(result.getTopics());
    }

    for (Topic topic : topicArns) {
        System.out.println(topic.getTopicArn());
    }

    snsClient.shutdown();

更改凭证提供商和区域以匹配您的账户,并确保您在 IAM 中为您的用户设置了适当的权限。

关于java - 使用 java 从 aws 获取主题 ARN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34333805/

相关文章:

java - Skobbler callout tail imageview 显示不正确 Android SDK 2.5.1

java - 单元测试类规范

amazon-web-services - 从ES中删除字段

javascript - SubscriptionConfirmation 请求中的 Token 或 SubscribeUrl 在哪里?

java - 如何动态检查字符串是否必须使用 format 方法完成?

java - 有没有办法让@ModelAttribute 动态化?

amazon-web-services - 如何使用 KCL 确定特定分区键的分片 ID?

php - DynamoDB : updateItem only if it already exists

ios - 无法将推送通知从 AWS SNS 发送到我的 iPad

android - sns 自动将端点注册到主题