我有几个SignalR基本演示在本地工作(聊天等),我理解推送到服务器然后将其广播到所有连接的客户端.
我的问题是如何利用SignalR将数据“流”到客户端.例如,在使用Twitters流API的NodeJS / Socket.IO中看到的示例.
那里有SignalR流媒体示例吗?这怎么可行?
解决方法
看一下SignalR.Samples项目中的示例.那里有流媒体样本.
服务器端连接:
namespace SignalR.Samples.Streaming { public class Streaming : PersistentConnection { } }
ThreadPool.QueueUserWorkItem(_ => { var connection = Connection.GetConnection<Streaming.Streaming>(); while (true) { connection.Broadcast(DateTime.Now.ToString()); Thread.Sleep(2000); } });
客户端代码
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> <Meta http-equiv="X-UA-Compatible" content="IE=Edge" /> <script src="../Scripts/jquery-1.6.2.min.js" type="text/javascript"></script> <script src="../Scripts/jquery.signalR.js" type="text/javascript"></script> <script type="text/javascript"> $(function () { var connection = $.connection('Streaming.ashx'); connection.received(function (data) { $('#messages').append('<li>' + data + '</li>'); }); connection.start(); }); </script> </head> <body> <ul id="messages"> </ul> </body> </html>