Partage via


Bibliothèque de client du service Azure Web PubSub pour Java

Le service Azure Web PubSub est un service géré par Azure qui permet aux développeurs de créer facilement des applications web avec des fonctionnalités en temps réel et un modèle de publication-abonnement. Tout scénario qui nécessite une messagerie de type publication-abonnement en temps réel entre un serveur et des clients ou entre des clients peut avoir recours au service Azure Web PubSub. Les fonctionnalités en temps réel traditionnelles qui nécessitent souvent une interrogation auprès du serveur ou l’envoi de requêtes HTTP peuvent également utiliser le service Azure Web PubSub.

Cet article décrit la bibliothèque cliente du service Azure Web PubSub.

Vous pouvez utiliser cette bibliothèque dans votre application côté serveur pour gérer les connexions clientes WebSocket, comme illustré dans ce diagramme :

The overflow diagram shows the overflow of using the service client library.

Utilisez cette bibliothèque pour effectuer les opérations suivantes :

  • Envoyer des messages à des hubs et des groupes.
  • Envoyer des messages à des utilisateurs et des connexions particuliers.
  • Organiser des utilisateurs et des connexions en groupes.
  • Fermer les connexions
  • Accorder, révoquer et vérifier des autorisations pour une connexion existante

Pour en savoir plus, consultez :

Bien démarrer

Prérequis

Inclure le package

<dependency>
    <groupId>com.azure</groupId>
    <artifactId>azure-messaging-webpubsub</artifactId>
    <version>1.0.0</version>
</dependency>

Créer un WebPubSubServiceClient à l’aide d’une chaîne de connexion

WebPubSubServiceClient webPubSubServiceClient = new WebPubSubServiceClientBuilder()
    .connectionString("{connection-string}")
    .hub("chat")
    .buildClient();

Créer un WebPubSubServiceClient à l’aide d’une clé d’accès

WebPubSubServiceClient webPubSubServiceClient = new WebPubSubServiceClientBuilder()
    .credential(new AzureKeyCredential("{access-key}"))
    .endpoint("<Insert endpoint from Azure Portal>")
    .hub("chat")
    .buildClient();

Exemples

Diffuser un message à l’ensemble d’un hub

webPubSubServiceClient.sendToAll("Hello world!", WebPubSubContentType.TEXT_PLAIN);

Diffusez un message à un groupe

webPubSubServiceClient.sendToGroup("java", "Hello Java!", WebPubSubContentType.TEXT_PLAIN);

Envoyer un message à une connexion

webPubSubServiceClient.sendToConnection("myconnectionid", "Hello connection!", WebPubSubContentType.TEXT_PLAIN);

Envoyer un message à un utilisateur

webPubSubServiceClient.sendToUser("Andy", "Hello Andy!", WebPubSubContentType.TEXT_PLAIN);

Résolution des problèmes

Activer la journalisation du client

Vous pouvez définir la variable d’environnement AZURE_LOG_LEVEL pour afficher les instructions de journalisation figurant dans la bibliothèque de client. Par exemple, le paramètre AZURE_LOG_LEVEL=2 affiche tous les messages d’information, d’avertissement et de journal des erreurs. Les niveaux de journal se trouvent ici : niveaux de journal.

Client HTTP par défaut

Toutes les bibliothèques clientes utilisent le client HTTP Netty par défaut. L’ajout de la dépendance ci-dessus configure automatiquement la bibliothèque de client pour utiliser le client HTTP Netty. La configuration ou la modification du client HTTP est décrite dans le wiki des clients HTTP.

Bibliothèque SSL par défaut

Par défaut, toutes les bibliothèques clientes utilisent la bibliothèque SSL Boring native Tomcat pour activer les performances de niveau natif pour les opérations SSL. La bibliothèque BoringSSL est un fichier uber jar contenant des bibliothèques natives pour Linux/macOS/Windows. Elle offre de meilleures performances que l’implémentation SSL par défaut au sein du JDK. Pour plus d’informations, notamment sur la réduction de la taille des dépendances, consultez [réglage des performances][https://github.com/Azure/azure-sdk-for-java/wiki/Performance-Tuning].

Utilisez ces ressources pour commencer à créer votre propre application :