Compartilhar via


Iniciar a conexão do WebSocket para o Azure Web PubSub

Os clientes conectam-se ao serviço Azure Web PubSub usando o protocolo padrão WebSocket. Você pode usar idiomas que têm suporte ao cliente WebSocket para gravar um cliente para o serviço. Neste artigo, você verá várias amostras de cliente WebSocket em diferentes linguagens.

Autorização

Web PubSub usa um JSON Web Token (JWT) para validar e autorizar clientes. Os clientes podem colocar o token no access_tokenparâmetro de consulta ou colocá-lo no cabeçalhoAuthorization ao se conectarem ao serviço.

Em um fluxo de trabalho típico, o cliente se comunica com o servidor de aplicativos primeiro para obter a URL do serviço e o token. Em seguida, o cliente abre a conexão WebSocket com o serviço usando a URL e o token recebidos.

O portal também fornece uma ferramenta para gerar a URL do cliente com o token dinamicamente. Essa ferramenta pode ser útil para fazer um teste rápido.

Captura de tela mostrando onde encontrar o Gerador de URL do Cliente.

Observação

Certifique-se de incluir apenas as funções necessárias ao gerar o token.

Para simplificar o fluxo de trabalho de exemplo, nas seções abaixo, usamos essa URL gerada temporariamente do portal para que o cliente se conecte. Usamos <Client_URL_From_Portal> para representar o valor. Por padrão, o token gerado expira em 60 minutos. Portanto, não se esqueça de gerar um novo quando este expirar.

O serviço oferece suporte a dois tipos de clientes WebSocket: um é o cliente WebSocket simples, e o outro é o cliente WebSocket do PubSub. Aqui mostramos como esses dois tipos de clientes se conectam ao serviço. Para obter mais informações sobre esses clientes, consulte protocolos de cliente WebSocket para Azure Web PubSub.

Dependência

Na maioria dos navegadores modernos, há suporte nativo à API WebSocket.

Cliente WebSocket simples

Dentro do bloco script da 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 WebSocket do PubSub

Dentro do bloco script da 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>

Próximas etapas

Neste artigo, mostramos como se conectar ao serviço usando a URL gerada no portal. Confira os tutoriais abaixo para ver como os clientes se comunicam com o servidor de aplicativos para obter a URL em aplicativos do mundo real.