Partage via


Démarrer une connexion WebSocket à Azure Web PubSub

Les clients se connectent au service Azure Web PubSub à l’aide du protocole WebSocket standard. Vous pouvez utiliser des langages qui prennent en charge le client WebSocket pour écrire un client pour le service. Cet article présente plusieurs exemples de clients WebSocket dans différents langages.

Autorisation

Web PubSub utilise une JSON Web Token (JWT) pour valider et autoriser les clients. Les clients peuvent placer le jeton dans le paramètre de requête access_token ou dans l’en-tête Authorization lors de la connexion au service.

Généralement, le client communique d’abord avec son serveur d’applications pour obtenir l’URL du service et le jeton. Ensuite, il ouvre la connexion WebSocket au service à l’aide de l’URL et du jeton qu’il reçoit.

Le portail fournit également un outil permettant de générer l’URL du client avec le jeton de manière dynamique. Cet outil peut être utile pour effectuer un test rapide.

Screenshot showing where to find the Client URL Generator.

Remarque

Veillez à n’inclure que les rôles nécessaires lors de la génération du jeton.

Dans les sections suivantes, pour simplifier l’exemple de flux de travail, nous utilisons cette URL générée temporairement à partir du portail pour que le client se connecte. Nous utilisons <Client_URL_From_Portal> pour représenter la valeur. Le jeton généré expire par défaut dans un délai de 60 minutes. N’oubliez donc pas d’en régénérer un lorsque le jeton expire.

Le service prend en charge deux types de clients WebSocket : l’un est le client WebSocket simple et l’autre est le client WebSocket PubSub. Nous montrons ici comment ces deux types de clients se connectent au service. Pour plus d’informations sur ces clients, consultez Protocoles clients WebSocket pour Azure Web PubSub.

Dépendance

Dans la plupart des navigateurs modernes, l’API WebSocket est prise en charge de manière native.

Client WebSocket simple

Dans le bloc script de la page HTML :

<script>
    // Don't forget to replace this <Client_URL_From_Portal> with the value fetched from the portal
    let ws = new WebSocket("<Client_URL_From_Portal>");
    ws.onopen = () => {
        // Do things when the WebSocket connection is established
    };

    ws.onmessage = event => {
        // Do things when messages are received.
    };
</script>

Client WebSocket PubSub

Dans le bloc script de la page HTML :

<script>
    // Don't forget to replace this <Client_URL_From_Portal> with the value fetched from the portal
    let ws = new WebSocket("<Client_URL_From_Portal>", 'json.webpubsub.azure.v1');
    ws.onopen = () => {
        // Do things when the WebSocket connection is established
    };

    ws.onmessage = event => {
        // Do things when messages are received.
    };
</script>

Étapes suivantes

Dans cet article, vous avez appris à vous connecter au service à l’aide de l’URL générée à partir du portail. Pour voir comment les clients communiquent avec le serveur d’applications pour obtenir l’URL dans des applications réelles, lisez ces didacticiels et examinez les exemples.