适用于 .NET 的 Azure Web PubSub 服务客户端库
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);
疑难解答
设置控制台日志记录
如果想要更深入地了解针对服务发出的请求,还可以启用控制台记录。
后续步骤
使用这些资源开始生成自己的应用程序: