Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
本文提供SignalR 服务事件的属性和架构。 有关事件架构的简介,请参阅Azure 事件网格事件架构。 它还提供了一系列快速入门和教程,用于将 Azure SignalR 用作事件源。
可用事件类型
SignalR 服务发出以下事件类型:
| 事件类型 | 说明 |
|---|---|
| Microsoft。SignalRService.ClientConnectionConnected | 当连接客户端连接时引发。 |
| Microsoft。SignalRService.ClientConnectionDisconnected | 当客户端连接断开连接时引发。 |
示例事件
以下示例显示了客户端连接已连接事件的架构:
[{
"source": "/subscriptions/{subscription-id}/resourceGroups/signalr-rg/providers/Microsoft.SignalRService/SignalR/signalr-resource",
"subject": "/hub/chat",
"type": "Microsoft.SignalRService.ClientConnectionConnected",
"time": "2019-06-10T18:41:00.9584103Z",
"id": "831e1650-001e-001b-66ab-eeb76e069631",
"data": {
"timestamp": "2019-06-10T18:41:00.9584103Z",
"hubName": "chat",
"connectionId": "crH0uxVSvP61p5wkFY1x1A",
"userId": "user-eymwyo23"
},
"specversion": "1.0"
}]
客户端连接断开连接事件的架构类似于:
[{
"source": "/subscriptions/{subscription-id}/resourceGroups/signalr-rg/providers/Microsoft.SignalRService/SignalR/signalr-resource",
"subject": "/hub/chat",
"type": "Microsoft.SignalRService.ClientConnectionDisconnected",
"time": "2019-06-10T18:41:00.9584103Z",
"id": "831e1650-001e-001b-66ab-eeb76e069631",
"data": {
"timestamp": "2019-06-10T18:41:00.9584103Z",
"hubName": "chat",
"connectionId": "crH0uxVSvP61p5wkFY1x1A",
"userId": "user-eymwyo23",
"errorMessage": "Internal server error."
},
"specversion": "1.0"
}]
事件属性
事件具有以下顶级数据:
| 属性 | 类型 | 说明 |
|---|---|---|
source |
字符串 | 事件源的完整资源路径。 此字段不可写入。 事件网格提供此值。 |
subject |
字符串 | Publisher定义的事件主题路径。 |
type |
字符串 | 此事件源的一个注册事件类型。 |
time |
字符串 | 基于提供程序 UTC 时间的事件生成时间。 |
id |
字符串 | 事件的唯一标识符。 |
data |
对象 | SignalR 服务事件数据。 |
specversion |
字符串 | CloudEvents 架构规范版本。 |
数据对象具有以下属性:
| 属性 | 类型 | 说明 |
|---|---|---|
timestamp |
字符串 | 基于提供程序 UTC 时间的事件生成时间。 |
hubName |
字符串 | 客户端连接所属的中心。 |
connectionId |
字符串 | 客户端连接的唯一标识符。 |
userId |
字符串 | 声明中定义的用户标识符。 |
errorMessage |
字符串 | 导致连接断开连接的错误。 |
教程和操作指南
| 标题 | 说明 |
|---|---|
| 将Azure SignalR 服务与事件网格集成概述。 | |
| 如何向事件网格发送Azure SignalR 服务事件 | 演示如何通过事件网格将Azure SignalR 服务事件发送到应用程序。 |
后续步骤
- 有关Azure 事件网格简介,请参阅 什么是事件网格?
- 有关创建Azure 事件网格订阅的详细信息,请参阅 Event Grid 订阅架构。