Azure Web PubSub 服务 是一项 Azure 托管服务,可帮助开发人员轻松构建具有实时功能和发布-订阅模式的 Web 应用程序。 需要服务器和客户端之间或客户端之间的实时发布-订阅消息传送的任何方案都可以使用 Azure Web PubSub 服务。 通常需要从服务器轮询或提交 HTTP 请求的传统实时功能也可以使用 Azure Web PubSub 服务。
可以在应用服务器端使用此库来管理 WebSocket 客户端连接,如下图所示:
使用此库可以:
- 将消息发送到中心和组。
- 向特定用户和连接发送消息。
- 将用户和连接分组组织。
- 关闭连接
- 授予、撤销和检查现有连接的权限
源代码 | 包 | API 参考文档 | 产品文档 | 示例
入门指南
安装软件包
从 NuGet 安装客户端库:
dotnet add package Azure.Messaging.WebPubSub
先决条件
- 一个 Azure 订阅。
- 现有的 Azure Web PubSub 服务实例。
创建和验证 WebPubSubServiceClient
为了与服务交互,需要创建 WebPubSubServiceClient 类的实例。 为了实现此目的,需要使用连接字符串或密钥,可在 Azure 门户中对其进行访问。
var serviceClient = new WebPubSubServiceClient(new Uri(endpoint), "some_hub", new AzureKeyCredential(key));
例子
向所有客户端广播文本消息
var serviceClient = new WebPubSubServiceClient(new Uri(endpoint), "some_hub", new AzureKeyCredential(key));
serviceClient.SendToAll("Hello World!");
向所有客户端广播 JSON 消息
var serviceClient = new WebPubSubServiceClient(new Uri(endpoint), "some_hub", new AzureKeyCredential(key));
serviceClient.SendToAll(RequestContent.Create(
new
{
Foo = "Hello World!",
Bar = 42
}),
ContentType.ApplicationJson);
向所有客户端广播二进制消息
var serviceClient = new WebPubSubServiceClient(new Uri(endpoint), "some_hub", new AzureKeyCredential(key));
Stream stream = BinaryData.FromString("Hello World!").ToStream();
serviceClient.SendToAll(RequestContent.Create(stream), ContentType.ApplicationOctetStream);
Troubleshooting
设置控制台日志记录
如果想要更深入地了解针对服务发出的请求,还可以启用控制台记录。
后续步骤
使用这些资源开始生成自己的应用程序: