Freigeben über


Starten einer WebSocket-Verbindung zu Azure Web PubSub

Clients verbinden sich mit dem Azure Web PubSub-Dienst über das Standardprotokoll WebSocket. Sie können Sprachen verwenden, die WebSocket-Client-Unterstützung haben, um einen Client für den Dienst zu schreiben. In diesem Artikel sehen Sie mehrere WebSocket-Client-Beispiele in verschiedenen Sprachen.

Autorisierung

Web PubSub verwendet ein JSON Web Token (JWT) zur Validierung und Autorisierung von Kunden. Clients können das Token entweder in den access_token Query-Parameter oder in den Authorization Header bei der Verbindung mit dem Dienst einfügen.

Normalerweise kommuniziert der Client zuerst mit seinem App-Server, um die URL des Dienstes und das Token zu erhalten. Dann öffnet der Client die WebSocket-Verbindung zum Dienst unter Verwendung der URL und des Tokens, die er erhält.

Das Portal bietet auch ein Tool, um die Client-URL mit dem Token dynamisch zu generieren. Dieses Tool kann nützlich sein, um einen schnellen Test durchzuführen.

Screenshot: Position des Client-URL-Generators

Hinweis

Achten Sie darauf, dass Sie bei der Erstellung des Tokens nur die erforderlichen Rollen angeben.

In den folgenden Abschnitten verwenden wir zur Vereinfachung des Beispiel-Workflows diese vorübergehend vom Portal generierte URL für die Verbindung des Clients. Wir verwenden <Client_URL_From_Portal>, um den Wert darzustellen. Das generierte Token läuft standardmäßig nach 60 Minuten ab. Vergessen Sie daher nicht, ein neues Token zu generieren, wenn das Token abläuft.

Es werden zwei Arten von WebSocket-Clients unterstützt: ein einfacher WebSocket-Client und ein PubSub-WebSocket-Client. Hier wird gezeigt, wie diese beiden Clienttypen eine Verbindung mit dem Dienst herstellen. Weitere Informationen zu diesen Clients finden Sie unter WebSocket-Clientprotokolle für Azure Web PubSub.

Abhängigkeit

In den meisten modernen Browsern wird die WebSocket-API nativ unterstützt.

Einfacher WebSocket-Client

Innerhalb des script-Blocks der HTML-Seite:

<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>

PubSub WebSocket-Klient

Innerhalb des script-Blocks der HTML-Seite:

<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>

Nächste Schritte

In diesem Artikel haben Sie gelernt, wie Sie eine Verbindung zum Dienst herstellen, indem Sie die vom Portal generierte URL verwenden. Um zu sehen, wie die Clients mit dem App-Server kommunizieren, um die URL in realen Anwendungen zu erhalten, lesen Sie diese Tutorials und sehen Sie sich die Beispiele an.