Net Core教程

ASP.NET Core基于SignalR实现消息推送实战演练

本文主要是介绍ASP.NET Core基于SignalR实现消息推送实战演练,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一、ASP.NET Core SignalR课程介绍

1)、SignalR简介

ASP.NET Core SignalR 是为 ASP.NET 开发人员提供的一个库,可以简化开发人员将实时 Web 功能添加到应用程序的过程。

实时 Web 功能是指这样一种功能:当所连接的客户端变得可用时服务器代码可以立即向其推送内容,而不是让服务器等待客户端请求新的数据。

2)、SignalR主要用途:

它出现的主要用途:可以用在聊天室、Web实时推送消息 (Real-Push-Message)、单点和多点通讯、扫码登陆、甚至可以结合其他技术用来做视频聊天等等。

3)、一句话总结今天我们实现的目标?

如何在ASP.NET Core中使用SignalR技术来实现服务端向客户端实时推送消息。

废话不多说,直接上干货,我们不生产干货,我们只是干货的搬运工。


案例效果如下所示:

1、SignalR服务端实时Push推送指定的消息给C/S客户端。

2、SignalR客户端支持断线自动重连。



二、SignalR和WebSocket的关系

SignalR是一个ASP .NET下的类库。WebSocket是HTML5提供的一种通讯协议。

WebSocket 是 HTML5 开始提供的一种在单个 TCP 连接上进行全双工通讯的协议。WebSocket 使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在 WebSocket API 中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输 。

SignalR是一个ASP .NET下的类库,可以在ASP .NET Core的Web项目中实时通信。在Web网页与服务器端间建立Socket连接,当WebSockets可用时(即浏览器支持Html5)SignalR使用WebSockets,当不支持时SignalR将使用长轮询来保证达到相同效果。

SignalR优先使用支持WebSocket,当遇到不支持的环境时,会使用老的传输方式。采用SignalR可以发挥WebSocket的功效,而不用担心老客户不支持WebSocket。


三、ASP.NET Core基于SignalR实现消息推送实战演练
 

1)、ASP.NET Core配置SignalR中间件
 

2)、ASP.NET Core创建SignalR中心(Hub)
 

3)、ASP.NET Core SignalR C/S客户端


4)、ASP.NET Core SignalR Web客户端
 

四、总结

关于WebSocket技术,大家感兴趣可以学习一下阿笨的课程《ASP.NET Core基于WebSocket实现消息推送实战演练》

这篇关于ASP.NET Core基于SignalR实现消息推送实战演练的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!