Поделиться через


Запуск подключения WebSocket к Azure Web PubSub

Клиенты подключаются к службе Azure Web PubSub с помощью стандартного протокола WebSocket . Вы можете использовать языки, поддерживающие клиент WebSocket, для записи клиента для службы. В этой статье вы увидите несколько примеров клиентов WebSocket на разных языках.

Авторизация

Web PubSub использует веб-токен JSON (JWT) для проверки и авторизации клиентов. Клиенты могут поместить маркер в access_token параметр запроса или поместить его в Authorization заголовок при подключении к службе.

Как правило, клиент сначала взаимодействует со своим сервером приложений, чтобы получить URL-адрес службы и маркера. Затем клиент открывает подключение WebSocket к службе с помощью URL-адреса и маркера, который он получает.

Портал также предоставляет средство для создания URL-адреса клиента с помощью маркера динамически. Это средство может быть полезно для быстрого тестирования.

Снимок экрана, на котором показано, где найти генератор URL-адресов клиентов.

Примечание.

Обязательно включите только необходимые роли при создании маркера.

В следующих разделах для упрощения примера рабочего процесса мы используем этот временно созданный URL-адрес на портале для подключения клиента. Мы используем <Client_URL_From_Portal> для представления значения. Срок действия маркера, созданного по умолчанию, истекает через 60 минут, поэтому не забудьте повторно создать маркер после истечения срока действия маркера.

Служба поддерживает два типа клиентов WebSocket: один является простым клиентом WebSocket, а другой — клиент PubSub WebSocket. Здесь мы покажем, как эти два типа клиентов подключаются к службе. Дополнительные сведения об этих клиентах см. в разделе "Протоколы клиентов WebSocket" для Azure Web PubSub.

Dependency

В большинстве современных браузеров API WebSocket изначально поддерживается.

Простой клиент WebSocket

script Внутри блока 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>

Клиент PubSub WebSocket

script Внутри блока 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>

Следующие шаги

Из этой статьи вы узнали, как подключиться к службе с помощью URL-адреса, созданного на портале. Чтобы узнать, как клиенты взаимодействуют с сервером приложений, чтобы получить URL-адрес в реальных приложениях, ознакомьтесь с этими руководствами и ознакомьтесь с примерами.