在学习Comet技术的时候,发现有SiganlR的类库使用起来不错,而且使用起来也特别方便,没用什么特别复杂的配置和编码。
SignalR的代码分为服务器端的后台代码和前端的js代码。
对于服务器端,需要建立一个SignalR的文件夹,然后在里面添加相应的消息处理类,这些类必须继承Hub类,同时需要设置该类的HubName属性(客户端会引用一个以该属性名字的动态js代码)
[HubName("messageHub")]
public class MessageHub : Hub
{
public void Send(string message)
{
this.Clients.addMessage(message);
}
}
对于客户端,除了引用一些基本的Signal和jquery的辅助js库外,还有一个很重要的引用js,即服务端SignalR文件下面的服务js文件(SignalR会根据上面HubName的属性名字生成一个相应的js文件),这个文件里面相应的对象负责实际的接收和发送数据的工作。
<script src="../../Scripts/jquery.signalR.min.js" type="text/javascript"></script>
<script src="../../Scripts/json2.min.js" type="text/javascript"></script>
<script src="/signalr/hubs" type="text/javascript"></script>
<script type="text/javascript">
$(function () {
var messageHub = $.connection.messageHub;
messageHub.addMessage = function (message) {
$('#ulLog').append('<li>' + message + "</li>")
};
$.connection.hub.start();
$("#btnOK").click(function () {
var message = document.getElementById("txtInput").value;
if (message != "") {
messageHub.send(message);
}
});
});
</script>
SignalR屏蔽了底层的comet的长连接的具体细节,而系统只需要关注发送和接收数据即可,暂时还没有测试SignalR的负载能力,有空可以深入一下。
用例代码见附件
引用
SignalR Github
SignalR
用SignalR创建实时永久长连接异步网络应用程序
ASP.NET MVC 3 Real Time Collaborative Apps with SignalR
Asynchronous scalable web applications with real-time persistent long-running connections with SignalR
分享到:
相关推荐
SignalR当然也提供了非常简单易用的高阶API,使服务器端可以单个或批量调用客户端上的JavaScript函数,并且非常 方便地进行连接管理,例如客户端连接到服务器端,或断开连接,客户端分组,以及客户端授权,使用...
c# , SignalR运用简单例子. SignalR运用简单例子SignalR运用简单例子SignalR运用简单例子
本资源实现了Unity+SignalR实现实时通信,封装简单易懂,支持源码自行扩展修改,希望能为大家提供到帮助
ASP signalR简单服务器推送功能 详情 请看http://blog.csdn.net/qq_33238150/article/details/50512520
使用signalr实现通讯简易聊天和发送图片,目前还没有完善改一改能用
使用signalR实现了一个简易的聊天。默认创建了一个房间; 功能: 1,进房间通知 2,发消息 3,接收消息
SignalR当然也提供了非常简单易用的高阶API,使服务器端可以单个或批量调用客户端上的JavaScript函数,并且非常 方便地进行连接管理,例如客户端连接到服务器端,或断开连接,客户端分组,以及客户端授权,使用...
安装也很简单,另外一种方式可以通过控制台安装:To install Microsoft ASP.NET SignalR, run the following command in the Package Manager ConsolePM> Install-Package Microsoft.AspNet.SignalR ASP.NET ...
signalr实现简单聊天室实例
xamarin android中使用signalr实现即时通讯,简单的例子,希望能帮助你快速入门
SignalR可以简单实现实时通信,开发平台是.Net MVC5(mvc3,mvc4都可以简单实现).
Nancy-SignalR-Canonical-Chat, 使用NancyFX和Coffeescript的裸机SignalR聊天应用程序 Nancy-SignalR-Canonical-Chat使用NancyFX和Coffeescript的裸机SignalR聊天应用程序。有关更多信息,请参见stackoverflow问题:...
asp.net core 使用SignalR实现简单的消息推送: 1、简单在线聊天功能(推送消息给所有在线的客户端) 2、推送消息给指定用户(定向推送消息)
.NET的SignalR后端加上VUE前端,JWT验证前后分离式Web聊天通信基架,可对通信数据进行扩展,提供了群组管理、上线离线、未读消息等简单策略,后端为.NET6.0,前端的signalR客户端。
asp.net mvc中如何使用signalr实现即时通讯,写了一个简单的一对一聊天的例子,希望对你有所帮助
简单介绍signalr组播域广播的使用,其思想可以用来刷新会员登陆状态,站内信,聊天等等功能
SignalR当然也提供了非常简单易用的高阶API,使服务器端可以单个或批量调用客户端上的JavaScript函数,并且非常 方便地进行连接管理,SignalR都非常容易实现客户端连接到服务器端,或断开连接,客户端分组,以及...
.net SignalR 学习代码,与.net Core SignalR Demo 不同的是,此份代码涵盖SignalR 源码 供学习参考用