Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Azure Web PubSub-tjänsten är en Azure-hanterad tjänst som hjälper utvecklare att enkelt skapa webbprogram med realtidsfunktioner och ett publiceringsprenumerationsmönster. Alla scenarion som kräver publiceringsprenumerationsmeddelanden i realtid mellan server och klienter eller mellan klienter kan använda Azure Web PubSub-tjänsten. Traditionella realtidsfunktioner som ofta kräver avsökning från servern eller skicka HTTP-begäranden kan också använda Azure Web PubSub-tjänsten.
I den här artikeln beskrivs klientbiblioteket för Azure Web PubSub-tjänsten.
Du kan använda det här biblioteket i din app på serversidan för att hantera WebSocket-klientanslutningarna, som du ser i det här diagrammet:

Använd det här biblioteket för att:
- Skicka meddelanden till hubbar och grupper.
 - Skicka meddelanden till vissa användare och anslutningar.
 - Organisera användare och anslutningar i grupper.
 - Stäng anslutningar
 - Bevilja, återkalla och kontrollera behörigheter för en befintlig anslutning
 
Mer information finns i:
- Java SDK för Azure Web PubSub-klientbibliotek
 - Referensdokumentation för Azure Web PubSub-klientbibliotek
 - Azure Web PubSub-klientbiblioteksexempel för Java
 - Dokumentation om Azure Web PubSub-tjänsten
 
Komma igång
Förutsättningar
- Ett Azure-konto med en aktiv prenumeration krävs. Om du inte redan har ett konto kan du skapa ett konto kostnadsfritt.
 - Ett Java Development Kit (JDK), version 8 eller senare.
 
Inkludera paketet
<dependency>
    <groupId>com.azure</groupId>
    <artifactId>azure-messaging-webpubsub</artifactId>
    <version>1.0.0</version>
</dependency>
Skapa en WebPubSubServiceClient med hjälp av anslutningssträng
WebPubSubServiceClient webPubSubServiceClient = new WebPubSubServiceClientBuilder()
    .connectionString("{connection-string}")
    .hub("chat")
    .buildClient();
Skapa en WebPubSubServiceClient med hjälp av åtkomstnyckeln
WebPubSubServiceClient webPubSubServiceClient = new WebPubSubServiceClientBuilder()
    .credential(new AzureKeyCredential("{access-key}"))
    .endpoint("<Insert endpoint from Azure Portal>")
    .hub("chat")
    .buildClient();
Exempel
- Sändningsmeddelande till hela hubben
 - Sända meddelande till en grupp
 - Skicka meddelande till en anslutning
 - Skicka meddelande till en användare
 
Sändningsmeddelande till hela hubben
webPubSubServiceClient.sendToAll("Hello world!", WebPubSubContentType.TEXT_PLAIN);
Sända meddelande till en grupp
webPubSubServiceClient.sendToGroup("java", "Hello Java!", WebPubSubContentType.TEXT_PLAIN);
Skicka meddelande till en anslutning
webPubSubServiceClient.sendToConnection("myconnectionid", "Hello connection!", WebPubSubContentType.TEXT_PLAIN);
Skicka meddelande till en användare
webPubSubServiceClient.sendToUser("Andy", "Hello Andy!", WebPubSubContentType.TEXT_PLAIN);
Felsökning
Aktivera klientloggning
Du kan ange AZURE_LOG_LEVEL miljövariabeln för att visa loggningsuttryck som görs i klientbiblioteket. Inställningen AZURE_LOG_LEVEL=2 visar till exempel alla informations-, varnings- och felmeddelanden. Loggnivåerna finns här: loggnivåer.
HTTP-standardklient
Alla klientbibliotek använder Netty HTTP-klienten som standard. Om du lägger till beroendet ovan konfigureras automatiskt klientbiblioteket så att netty HTTP-klienten används. Konfiguration eller ändring av HTTP-klienten beskrivs i HTTP-klienternas wiki.
Standard-SSL-bibliotek
Som standard använder alla klientbibliotek det Tomcat-inbyggda Boring SSL-biblioteket för att aktivera prestanda på intern nivå för SSL-åtgärder. Boring SSL-biblioteket är en uber-jar som innehåller interna bibliotek för Linux/macOS/Windows och ger bättre prestanda jämfört med standard-SSL-implementeringen i JDK. Mer information, inklusive hur du minskar beroendestorleken, finns i [prestandajustering][https://github.com/Azure/azure-sdk-for-java/wiki/Performance-Tuning].
Använd dessa resurser för att börja skapa ett eget program: