ASP.NET Core SignalR 客户端

版本控制、支持和兼容性

SignalR 客户端随服务器组件一起提供,并进行了版本控制以实现匹配。 任何受支持的客户端都可以安全地连接到任何受支持的服务器,并且任何兼容性问题都将被视为需要修复的 bug。 SignalR 客户端在与 .NET Core 的其余版本相同的支持生命周期中受支持。 有关详细信息,请参阅 .NET Core 支持策略

许多功能都需要兼容的客户端和服务器。 请查看下表,其中显示了各种功能的最低版本。

SignalR 的 1.x 版本映射到 2.1 和 2.2 .NET Core 版本,并且具有相同的生命周期。 对于 3.x 及更高版本,SignalR 版本与 .NET 的其余版本完全匹配,并且具有相同的支持生命周期。

SignalR 版本 .NET Core 版本 支持级别 结束支持
1.0.x 2.1.x 长期支持 2021 年 8 月 21 日
1.1.x 2.2.x 生命周期结束 2019 年 12 月 23 日
3.x 或更高版本 与 SignalR 版本相同 请参阅 .NET Core 支持策略

注意:在 ASP.NET Core 3.0 中,JavaScript 客户端已迁移到 @microsoft/signalr npm 包

功能分布

下表显示提供实时支持的客户端的功能和支持。 对于每项功能,该表都会列出支持该功能的最低版本。 如果未列出任何版本,则不支持该项功能。

功能 服务器 .NET 客户端 JavaScript 客户端 Java 客户端
Azure SignalR 服务支持 2.1.0 1.0.0 1.0.0 1.0.0
服务器到客户端流式传输 2.1.0 1.0.0 1.0.0 1.0.0
客户端到服务器流式传输 3.0.0 3.0.0 3.0.0 3.0.0
自动重新连接(.NETJavaScript 3.0.0 3.0.0 3.0.0
WebSocket 传输 2.1.0 1.0.0 1.0.0 1.0.0
服务器发送事件传输 2.1.0 1.0.0 1.0.0
长轮询传输 2.1.0 1.0.0 1.0.0 3.0.0
JSON 中心协议 2.1.0 1.0.0 1.0.0 1.0.0
MessagePack 中心协议 2.1.0 1.0.0 1.0.0 5.0.0
客户端结果 7.0.0 7.0.0 7.0.0 7.0.0

问题跟踪器中跟踪对启用其他客户端功能的支持。

不支持 ECMAScript 6 (ES6) 的浏览器

SignalR 面向 ES6。 对于不支持 ES6 的浏览器,请将库转译为 ES5。 有关详细信息,请参阅 ES6 使用入门 – 使用 Traceur 和 Babel 将 ES6 转为 ES5

其他资源