In meiner Anwendung muss ich Nachrichten an den gegebenen Themennamen senden. Das Thema wurde bereits von anderen Personen erstellt und in einer Konfigurationsdatei geben sie nur das Thema Name an. Meine Arbeit ist es, die Nachrichten in dem gegebenen Thema Name zu schieben. Gibt es eine Möglichkeit, Thema ARN nach Thema NAME in Java zu bekommen?AWS SNS - Wie bekomme ich das Thema arn nach dem Namen des Themas?
Antwort
Ich habe dies auf eine von zwei Arten getan. Der ARN ist immer das gleiche Muster. Sie können also einfach "arn: aws: sns :::" abonnieren, wobei:
Region von Regions.getCurrentRegion() ist. Seien Sie vorsichtig damit, da es ein wenig teuer für einen Anruf ist, und Sie müssen damit umgehen, dass Sie nicht in einer EC2/Elastic Beanstalk-Instanz sind.
Konto stammt von AmazonIdentityManagementClient.getUser(). GetUser(). GetArn(). Sie müssen die Kontonummer von diesem analysieren. Die gleiche Warnung, dass Sie nicht in einer EC2-Umgebung sind.
Name ist, was Sie haben.
Ein einfacher Weg ist Schleife durch die Themen und suchen Sie nach dem gewünschten Namen in der ARN. Sie verwenden dazu die Methode listTopics von AmazonSNSClient. Denken Sie daran, dass diese Methode nur die ersten 100 Themen zurückgibt - Sie sollten die gesamte Themenliste korrekt durchlaufen.
Was Sie tun können, ist eine Tabelle erstellen, die Thema und seine topicArn enthält.
Das Thema arn kann von der Konsole abgerufen werden oder die API beim Erstellen eines Themas verwenden.
Auf diese Weise keine Schleife oder versuchen, ein Muster zu entsprechen.
Wie in diesem answer mit createTopic (topicName) angegeben ist direkter Ansatz. Falls das Thema zuvor erstellt wurde, wird nur das Thema ARN zurückgegeben.
- 1. AWS SNS Abrufen des Themas nach Name
- 2. Amazon AWS SNS: Wie segmentiert man innerhalb eines Themas?
- 3. Ungültige Parameter: Thema Name Fehler bei der Veröffentlichung von AWS SNS arn Endpunkt
- 4. SNS-Thema löst Lambda nicht aus
- 5. Zugriff AWS CloudFormation ARN von innen Lambda-Funktion
- 6. Erstellen Sie SNS-Thema als Cognito-Identität
- 7. AWS SNS Pubs aus dem Browser
- 8. So erstellen Sie AWS SNS Thema im Code (iOS Mobile Hub SDK)
- 9. AWS SNS als Quelle für AWS Lambda
- 10. So erstellen Sie ein Amazon SNS-Thema
- 11. SNS Batch Publish
- 12. AWS Lambda SNS-Ereignis erst aufrufen, nachdem SQS-Abonnement für dasselbe Thema verarbeitet wurde
- 13. AWS API Gateway + DynamoDB Rolle ARN Fehler
- 14. Wie kann ich ein iOS-Gerät von einem amazon SNS-Thema abmelden?
- 15. Pars Push an AWS SNS
- 16. AWS SNS Sonderbarer Fehler
- 17. AWS SNS-Lieferungs-Callback
- 18. Wie Thema Namen Gerrit über die Kommandozeile
- 19. AWS: SNS-Nachricht für Lambda-Funktion über Boto3 (Python2) veröffentlichen
- 20. Ist das Fanout-Muster mit AWS SNS und SQS zuverlässig?
- 21. AWS SNS Push-Benachrichtigung Erläuterung
- 22. Änderung des Themas in Eclipse kepler schlägt
- 23. AWS SNS Android GCM - InvalidPlatformToken
- 24. Wie bekomme ich die Position des Textcursors nach dem Tastendruck?
- 25. So erhalten Sie Abonnement-ARN von Amazon SNS, um sich davon abzumelden
- 26. Beispiel SNS-Abonnementbestätigung mit AWS .NET SDK
- 27. AWS API-Gateway kommuniziert mit SNS
- 28. Android Push-Benachrichtigungen an eine benutzerdefinierte Liste von Abonnenten eines Themas mit Amazon SNS
- 29. Wie sende ich eine SMS-Nachricht über AWS SNS mit Boto3 in einer AWS Lambda-Funktion?
- 30. Wie bekomme ich SublimeText Thema wie codepen.io