Créer une rubrique Amazon SNS à l’aide d’un AWS kit SDK - Amazon Simple Notification Service

Créer une rubrique Amazon SNS à l’aide d’un AWS kit SDK

Les exemples de code suivants montrent comment créer une rubrique Amazon SNS.

.NET
AWS SDK for .NET
Astuce

Pour découvrir comment configurer et exécuter cet exemple, consultez GitHub.

using System; using System.Threading.Tasks; using Amazon.SimpleNotificationService; using Amazon.SimpleNotificationService.Model; /// <summary> /// This example shows how to use Amazon Simple Notification Service /// (Amazon SNS) to add a new Amazon SNS topic. The example was created /// using the AWS SDK for .NET version 3.7 and .NET Core 5.0. /// </summary> public class CreateSNSTopic { public static async Task Main() { string topicName = "ExampleSNSTopic"; IAmazonSimpleNotificationService client = new AmazonSimpleNotificationServiceClient(); var topicArn = await CreateSNSTopicAsync(client, topicName); Console.WriteLine($"New topic ARN: {topicArn}"); } /// <summary> /// Creates a new SNS topic using the supplied topic name. /// </summary> /// <param name="client">The initialized SNS client object used to /// create the new topic.</param> /// <param name="topicName">A string representing the topic name.</param> /// <returns>The Amazon Resource Name (ARN) of the created topic.</returns> public static async Task<string> CreateSNSTopicAsync(IAmazonSimpleNotificationService client, string topicName) { var request = new CreateTopicRequest { Name = topicName, }; var response = await client.CreateTopicAsync(request); return response.TopicArn; } }
  • Pour de plus amples informations sur l’API, consultez CreateTopic dans AWS SDK for .NET Référence de l’API.

C++
Kit SDK pour C++
Astuce

Pour découvrir comment configurer et exécuter cet exemple, consultez GitHub.

Aws::SDKOptions options; Aws::InitAPI(options); { Aws::String topic_name = argv[1]; Aws::SNS::SNSClient sns; Aws::SNS::Model::CreateTopicRequest ct_req; ct_req.SetName(topic_name); auto ct_out = sns.CreateTopic(ct_req); if (ct_out.IsSuccess()) { std::cout << "Successfully created topic " << topic_name << std::endl; } else { std::cout << "Error creating topic " << topic_name << ":" << ct_out.GetError().GetMessage() << std::endl; } } Aws::ShutdownAPI(options);
  • Pour de plus amples informations sur l’API, consultez CreateTopic dans AWS SDK for C++ Référence de l’API.

Go
Kit SDK for Go V2
Astuce

Pour découvrir comment configurer et exécuter cet exemple, consultez GitHub.

  • Pour de plus amples informations sur l’API, consultez CreateTopic dans AWS SDK for Go Référence de l’API.

Java
Kit SDK pour Java 2.x
Astuce

Pour découvrir comment configurer et exécuter cet exemple, consultez GitHub.

public static String createSNSTopic(SnsClient snsClient, String topicName ) { CreateTopicResponse result = null; try { CreateTopicRequest request = CreateTopicRequest.builder() .name(topicName) .build(); result = snsClient.createTopic(request); return result.topicArn(); } catch (SnsException e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } return ""; }
  • Pour de plus amples informations sur l’API, consultez CreateTopic dans AWS SDK for Java 2.x Référence de l’API.

JavaScript
Kit SDK pour JavaScript V3
Astuce

Pour découvrir comment configurer et exécuter cet exemple, consultez GitHub.

Créez le client dans un module séparé et exportez-le.

import { SNSClient } from "@aws-sdk/client-sns"; // Set the AWS Region. const REGION = "REGION"; //e.g. "us-east-1" // Create SNS service object. const snsClient = new SNSClient({ region: REGION }); export { snsClient };

Importez le kit SDK et les modules client et appelez l’API.

// Import required AWS SDK clients and commands for Node.js import {CreateTopicCommand } from "@aws-sdk/client-sns"; import {snsClient } from "./libs/snsClient.js"; // Set the parameters const params = { Name: "TOPIC_NAME" }; //TOPIC_NAME const run = async () => { try { const data = await snsClient.send(new CreateTopicCommand(params)); console.log("Success.", data); return data; // For unit tests. } catch (err) { console.log("Error", err.stack); } }; run();
Kotlin
Kit SDK pour Kotlin
Note

Ceci est une documentation préliminaire pour une fonctionnalité en version de prévisualisation. Elle est susceptible d’être modifiée.

Astuce

Pour découvrir comment configurer et exécuter cet exemple, consultez GitHub.

suspend fun createSNSTopic(topicName: String): String { val request = CreateTopicRequest { name = topicName } SnsClient { region = "us-east-1" }.use { snsClient -> val result = snsClient.createTopic(request) return result.topicArn.toString() } }
  • Pour plus d’informations sur l’API, consultez la section CreateTopic de la référence du kit SDK AWS pour l’API Kotlin.

PHP
Kit SDK pour PHP
Astuce

Pour découvrir comment configurer et exécuter cet exemple, consultez GitHub.

require 'vendor/autoload.php'; use Aws\Sns\SnsClient; use Aws\Exception\AwsException; /** * Create a Simple Notification Service topics in your AWS account at the requested region. * * This code expects that you have AWS credentials set up per: * https://docs.aws.amazon.com/sdk-for-php/v3/developer-guide/guide_credentials.html */ $SnSclient = new SnsClient([ 'profile' => 'default', 'region' => 'us-east-1', 'version' => '2010-03-31' ]); $topicname = 'myTopic'; try { $result = $SnSclient->createTopic([ 'Name' => $topicname, ]); var_dump($result); } catch (AwsException $e) { // output error message if fails error_log($e->getMessage()); }
Python
Kit SDK pour Python (Boto3)
Astuce

Pour découvrir comment configurer et exécuter cet exemple, consultez GitHub.

class SnsWrapper: """Encapsulates Amazon SNS topic and subscription functions.""" def __init__(self, sns_resource): """ :param sns_resource: A Boto3 Amazon SNS resource. """ self.sns_resource = sns_resource def create_topic(self, name): """ Creates a notification topic. :param name: The name of the topic to create. :return: The newly created topic. """ try: topic = self.sns_resource.create_topic(Name=name) logger.info("Created topic %s with ARN %s.", name, topic.arn) except ClientError: logger.exception("Couldn't create topic %s.", name) raise else: return topic
  • Pour de plus amples informations sur l’API, consultez CreateTopic dans AWS Référence de l’API du kit SDK for Python (Boto3).

Ruby
Kit SDK pour Ruby
Astuce

Pour découvrir comment configurer et exécuter cet exemple, consultez GitHub.

require 'aws-sdk-sns' # v2: require 'aws-sdk' def topic_created?(sns_client, topic_name) sns_client.create_topic(name: topic_name) rescue StandardError => e puts "Error while creating the topic named '#{topic_name}': #{e.message}" end # Full example call: def run_me topic_name = 'TOPIC_NAME' region = 'REGION' sns_client = Aws::SNS::Client.new(region: region) puts "Creating the topic '#{topic_name}'..." if topic_created?(sns_client, topic_name) puts 'The topic was created.' else puts 'The topic was not created. Stopping program.' exit 1 end end run_me if $PROGRAM_NAME == __FILE__
Rust
Kit SDK pour Rust
Note

Cette documentation concerne un kit SDK en prévisualisation préliminaire. Le kit SDK est susceptible d’être modifié et ne doit pas être utilisé en production.

Astuce

Pour découvrir comment configurer et exécuter cet exemple, consultez GitHub.

async fn make_topic(client: &Client, topic_name: &str) -> Result<(), Error> { let resp = client.create_topic().name(topic_name).send().await?; println!( "Created topic with ARN: {}", resp.topic_arn().unwrap_or_default() ); Ok(()) }
  • Pour de plus amples informations sur l’API, consultez CreateTopic dans AWS Référence du kit SDK pour l’API Rust.

Pour obtenir la liste complète des guides de développement AWS SDK et des exemples de code, consultez Utilisation d'Amazon SNS avec un kit SDK AWS. Cette rubrique comprend également des informations sur le démarrage et sur les versions précédentes du kit de développement logiciel (SDK).