技术交流 > ASP.NET > Microsoft.AspNet.SignalR 简单上手

Microsoft.AspNet.SignalR 简单上手

什么是 SignalR?

ASP.NET SignalR 是 ASP.NET 开发人员的库,可简化将实时 web 功能添加到应用程序的过程。 实时 web 功能使服务器代码能够在可用时立即将内容推送到连接的客户端,而不是让服务器等待客户端请求新的数据。(简单地说就是服务端实时向客户调推送消息)


1.NuGet管理 安装signalr(注意:Signal2.x 仅支持.net 4.5以上)

--install-package Microsoft.AspNet.SignalR


2.新建一个实现SignalR集线器的类

图片.png


3.新建一个用于配置OWIN应用程序的类

图片.png


4.测试~/signalr/hubs地址

若~/signalr/hubs地址可正常访问说明集线器已部署正常,这里可以看到已经部署的集线器(首字母要小写,jquery最低版本1.6.4)

图片.png


5.编写前端

这里尤为注意:$.connection.hub.start();必须写在xx.client.Test =function(){...}之前,否则后端OnConnected、OnDisconnected不会生效


图片.png


6.最终效果

图片.png


任意新增一个链接,所有已经打开的客户端都会收到来自服务端的广播,当前实时连接设备数;

这个功能更适合聊天室的场景,但目前有一个问题笔者暂时未找到原因,即:

FireFox、Edge等浏览器关闭页面时能立即触发服务端OnDisconnected方法,但Chrome、Opera等浏览器关闭页面时不能立刻触发,需要等一段时间才能触发,有知道的大神可以在评论区留言解答一下。


2021-12-15 11:00:06
评论
  • 评论加载中...

评论内容: