Compartir a través de


Inicio de una conexión de WebSocket a Azure Web PubSub

Los clientes se conectan al servicio Azure Web PubSub mediante el protocolo WebSocket estándar. Puede usar lenguajes que tengan compatibilidad con el cliente de WebSocket para escribir un cliente para el servicio. En este artículo, verá varios ejemplos de cliente de WebSocket en distintos lenguajes.

Authorization

Web PubSub usa un JSON Web Token (JWT) para validar y autorizar a los clientes. Los clientes pueden colocar el token en el parámetro de consulta access_token o en el encabezado Authorization al establecer conexión con el servicio.

Normalmente, el cliente se comunica primero con su servidor de aplicaciones para obtener la dirección URL del servicio y el token. A continuación, el cliente abre la conexión de WebSocket con el servicio mediante la dirección URL y el token que recibe.

El portal también proporciona una herramienta para generar la dirección URL del cliente con el token dinámicamente. Esta herramienta puede ser útil para realizar una prueba rápida.

Captura de pantalla que muestra dónde encontrar el generador de direcciones URL de cliente.

Nota:

Asegúrese de incluir solo los roles necesarios al generar el token.

Para simplificar el flujo de trabajo de ejemplo, en las secciones siguientes, usamos esta dirección URL generada temporalmente desde el portal para que el cliente establezca conexión. Usamos <Client_URL_From_Portal> para representar el valor. El token generado expira en un plazo de 60 minutos de manera predeterminada, por lo que no olvide volver a generar uno cuando expire.

El servicio admite dos tipos de clientes de WebSocket, uno que es el cliente de WebSocket simple y el otro, el cliente de WebSocket PubSub. A continuación, se muestra cómo estos dos tipos de clientes se conectan al servicio. Para más información sobre estos clientes, consulte Protocolos de cliente de WebSocket para Azure Web PubSub.

Dependencia

En la mayoría de los exploradores modernos, la API WebSocket se admite de forma nativa.

Cliente simple de WebSocket

En el bloque script de la página 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>

Cliente de WebSocket de PubSub

En el bloque script de la página 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>

Pasos siguientes

En este artículo, ha obtenido información sobre cómo conectarse al servicio mediante la dirección URL generada desde el portal. Para ver cómo se comunican los clientes con el servidor de aplicaciones con tal de obtener la dirección URL en aplicaciones del mundo real, consulte los tutoriales y ejemplos siguientes.