你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
本快速入门演示如何使用 Azure CLI 连接到 Azure Web PubSub 实例并将消息发布到连接的客户端。
如果没有 Azure 帐户,请在开始前创建一个免费帐户。
先决条件
在 Azure Cloud Shell 中使用 Bash 环境。 有关详细信息,请参阅 Azure Cloud Shell 入门。
如需在本地运行 CLI 参考命令,请安装 Azure CLI。 如果在 Windows 或 macOS 上运行,请考虑在 Docker 容器中运行 Azure CLI。 有关详细信息,请参阅如何在 Docker 容器中运行 Azure CLI。
如果使用的是本地安装,请使用 az login 命令登录到 Azure CLI。 若要完成身份验证过程,请遵循终端中显示的步骤。 有关其他登录选项,请参阅 使用 Azure CLI 向 Azure 进行身份验证。
出现提示时,请在首次使用时安装 Azure CLI 扩展。 有关扩展的详细信息,请参阅 使用和管理 Azure CLI 中的扩展。
运行 az version 以查找安装的版本和依赖库。 若要升级到最新版本,请运行 az upgrade。
- 本快速入门需要 Azure CLI 版本 2.22.0 或更高版本。 如果使用 Azure Cloud Shell,则最新版本已安装。
创建资源组
资源组是在其中部署和管理 Azure 资源的逻辑容器。 使用 az group create 命令在 myResourceGroup
位置创建名为 eastus
的资源组。
az group create --name myResourceGroup --___location EastUS
创建 Web PubSub 实例
运行 az extension add,安装 webpubsub 扩展或将其升级到当前版本。
az extension add --upgrade --name webpubsub
使用 Azure CLI az webpubsub create 命令在已创建的资源组中创建 Web PubSub。 以下命令在 EastUS 的资源组 myResourceGroup 下创建一个免费的 Web PubSub 资源:
重要
每个 Web PubSub 资源必须具有唯一名称。 在以下示例中,将 <your-unique-resource-name> 替换为 Web PubSub 的名称。
az webpubsub create --name "<your-unique-resource-name>" --resource-group "myResourceGroup" --___location "EastUS" --sku Free_F1
此命令的输出会显示新建的资源的属性。 请记下下面列出的两个属性:
-
资源名称:为上面的
--name
参数提供的名称。 -
主机名:在本例中,主机名为
<your-unique-resource-name>.webpubsub.azure.com/
。
目前,只有你的 Azure 帐户才有权对这个新资源执行任何操作。
播放实例
连接到服务
使用 Azure CLI az webpubsub client 命令启动与上一步创建的服务的 WebSocket 客户端连接,并提供以下信息:
- 中心名称:1 到 127 个字符组成的字符串。 应以字母字符
(a-z, A-Z)
开头,并且仅包含字母数字(0-9, a-z, A-Z)
字符或下划线(_)
。
中心是已连接的 WebSocket 连接的逻辑集。 有关概念的详细信息,请查看关于中心、组和连接。
重要
将 <your-unique-resource-name> 替换为在前面的步骤中创建的 Web PubSub 资源的名称。
- 中心名称:myHub1。
- 资源组名称:myResourceGroup。
- 用户 ID:user1
az webpubsub client start --name "<your-unique-resource-name>" --resource-group "myResourceGroup" --hub-name "myHub1" --user-id "user1"
可以看到该命令建立了与 Web PubSub 服务的 WebSocket 连接,并且你收到了一条 JSON 消息,指示它现在已成功连接,并分配有唯一的 connectionId
:
{"type":"system","event":"connected","userId":"user1","connectionId":"<your_unique_connection_id>"}
体验一下,然后尝试使用 joingroup <group-name>
加入群组并使用 sendtogroup <group-name>
向群组发送消息:
joingroup group1
sendtogroup group1 hello
发布消息和管理客户端
Azure CLI 还提供 az webpubsub service 命令来管理客户端连接。
打开其他 CLI 命令,然后可以将消息广播到客户端:
- 中心名称:myHub1。
- 资源组名称:myResourceGroup。
az webpubsub service broadcast --name "<your-unique-resource-name>" --resource-group "myResourceGroup" --hub-name "myHub1" --payload "Hello World"
切换回上一个 CLI 命令,可以看到客户端收到消息:
{"type":"message","from":"server","dataType":"text","data":"Hello World"}
还可以使用 --help
选项列出所有可用命令,并播放列出的命令。
az webpubsub service --help
后续步骤
本快速入门提供如何连接到 Web PubSub 服务以及如何将消息发布到连接的客户端的基本想法。
在现实应用程序中,你可以使用各种语言的 SDK 来生成自己的应用程序。 我们还提供了函数扩展,供你轻松生成无服务器应用程序。
使用这些资源开始生成自己的应用程序: