2015-12-17 35 views
1

有人可以让我知道如何从SNS使用AmazonSNSClient在java中得到确切的主题arn吗?获取主题ARN使用java的aws

我想用它在以下PutMetricAlarmRequest

.withAlarmActions(awsClient.getAmazonSNSClient(). ?) 

回答

0

您可以使用下面的代码来获取所有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为用户设置相应的权限。

+0

确切地说....我已经用这种方式实现了......感谢Rohan – Yahiya

相关问题