Các SignalR Client trong ASP.NET Core
Nguồn: ASP.NET Core SignalR clients
Versioning, hỗ trợ và tương thích
Các SignalR client được phát hành cùng với các thành phần server và được đánh số phiên bản để khớp nhau. Bất kỳ client được hỗ trợ nào cũng có thể kết nối an toàn với bất kỳ server được hỗ trợ nào, và mọi vấn đề tương thích sẽ được coi là lỗi cần sửa. Các SignalR client được hỗ trợ trong cùng vòng đời hỗ trợ như phần còn lại của .NET. Xem Chính sách hỗ trợ .NET và .NET Core để biết chi tiết.
Nhiều tính năng yêu cầu client và server tương thích. Xem bảng bên dưới để biết phiên bản tối thiểu cho các tính năng khác nhau.
Phiên bản 1.x của SignalR tương ứng với các bản phát hành .NET Core 2.1 và 2.2 và có cùng thời hạn sử dụng. Đối với phiên bản 3.x trở lên, phiên bản SignalR khớp chính xác với phần còn lại của .NET và có cùng vòng đời hỗ trợ.
| Phiên bản SignalR | Phiên bản .NET Core | Mức hỗ trợ | Ngày kết thúc hỗ trợ |
|---|---|---|---|
| 1.0.x | 2.1.x | Long Term Support (Hỗ trợ dài hạn) | 21 tháng 8, 2021 |
| 1.1.x | 2.2.x | End Of Life (Hết vòng đời) | 23 tháng 12, 2019 |
| 3.x trở lên | giống với phiên bản SignalR | Xem Chính sách hỗ trợ .NET và .NET Core |
LƯU Ý: Trong ASP.NET Core 3.0, JavaScript client đã chuyển sang gói npm @microsoft/signalr.
Phân phối tính năng
Bảng dưới đây hiển thị các tính năng và hỗ trợ cho các client cung cấp hỗ trợ thời gian thực (real-time). Đối với mỗi tính năng, phiên bản tối thiểu hỗ trợ tính năng đó được liệt kê. Nếu không có phiên bản nào được liệt kê, tính năng đó không được hỗ trợ.
| Tính năng | Server | .NET client | JavaScript client | Java client | Swift client |
|---|---|---|---|---|---|
| Hỗ trợ Azure SignalR Service | 2.1.0 | 1.0.0 | 1.0.0 | 1.0.0 | 1.0.0-preview.1 |
| Streaming Server-to-client | 2.1.0 | 1.0.0 | 1.0.0 | 1.0.0 | 1.0.0-preview.1 |
| Streaming Client-to-server | 3.0.0 | 3.0.0 | 3.0.0 | 3.0.0 | ❌ |
| Tự động kết nối lại - Automatic Reconnection (.NET, JavaScript) | 3.0.0 | 3.0.0 | 3.0.0 | ❌ | 1.0.0-preview.1 |
| Transport WebSockets | 2.1.0 | 1.0.0 | 1.0.0 | 1.0.0 | 1.0.0-preview.1 |
| Transport Server-Sent Events | 2.1.0 | 1.0.0 | 1.0.0 | ❌ | 1.0.0-preview.1 |
| Transport Long Polling | 2.1.0 | 1.0.0 | 1.0.0 | 3.0.0 | 1.0.0-preview.1 |
| Giao thức JSON Hub | 2.1.0 | 1.0.0 | 1.0.0 | 1.0.0 | 1.0.0-preview.1 |
| Giao thức MessagePack Hub | 2.1.0 | 1.0.0 | 1.0.0 | 5.0.0 | 1.0.0-preview.1 |
| Kết quả từ client (Client Results) | 7.0.0 | 7.0.0 | 7.0.0 | 7.0.0 | 1.0.0-preview.1 |
Hỗ trợ cho việc kích hoạt các tính năng client bổ sung được theo dõi trong issue tracker của chúng tôi.
Các trình duyệt không hỗ trợ ECMAScript 6 (ES6)
SignalR nhắm đến ES6. Đối với các trình duyệt không hỗ trợ ES6, hãy biên dịch (transpile) thư viện sang ES5. Để biết thêm thông tin, xem Getting Started with ES6 – Transpiling ES6 to ES5 with Traceur and Babel.