Tag: signalr hub

SignalR +通过操作方法将消息发布到Hub

我正在使用SignalR的中心function( https://github.com/SignalR/SignalR )向所有订阅的客户端发布消息: public class NewsFeedHub : Hub public void Send(string channel, string content) { Clients[channel].addMessage(content); } 当通过Javascript调用“Send”时,这很好,但是我也想让Web应用程序发布消息(从ASP.NET MVC操作方法中)。 我已经尝试实例化一个新对象ob NewsFeedHub并调用Send方法,但是这会导致错误(因为Hub的底层“连接”未设置)。 有没有办法使用集线器没有连接?

将SignalR 2.0 .NET客户端重新连接到服务器集线器的最佳实践

我在移动应用程序中使用SignalR 2.0与.NET客户端,所以我需要处理各种types的断开连接。 有时SignalR客户端在没有我的帮助的情况下重新连接 – 有时我必须通过再次调用HubConnection.Start()来重新连接。 (因为SignalR神奇地自动重新连接一些时间,我想知道如果我错过了function或configuration设置) build立一个自动重新连接的客户端的最佳方法是什么? 我已经看到处理闭合()事件,然后连接n秒后的JavaScript示例。 有没有推荐的方法? 我已经阅读了关于SignalR连接生命周期的文档和一些文章,但是我仍然不清楚如何处理客户端重新连接。 谢谢!

从系统的其他地方调用SignalR集线器客户端

我已经build立了一个SignalR集线器来在服务器和客户端之间进行通信。 中心服务器端代码存储在一个名为Hooking.cs的类中。 我想要的是能够调用Hooking.cs中定义的方法,以允许我从应用程序中的任何地方向任何连接的客户端广播消息。 看起来,每个客户端/服务器调用都会创build一个Hooking.cs的新实例,所以我希望能够使用类似于 var hooking = new Hooking(); hooking.Test(); 用Hooking.cs中定义的方法Test(),如 public static void Test() { Clients.test() } 并与一个客户端JavaScript var hooking = $.connection.hooking; hooking.test = function() { alert("test worked"); }; $.connection.hub.start() 不幸的是,并不是那么简单,因为客户端不是静态的,所以不能从静态方法访问。 通过SignalR源代码来看,我遇到了一个看起来很有前途的方法, Hubs.Invoke(string hubName, string method, params object[] args) ,所以我希望我可以使用诸如Hubs.Invoke("Hooking", "Test")但我不能让它工作。 任何帮助,将非常感激

.net localhost网站始终如一地获取动脉信号/ poll?transport = longPolling&connectionToken =调用

我创build了一个新的VS 2013项目,并使用Firefox浏览器查看了default.aspx页面。 当我检查它所做的networking调用时,我发现它会不断地调用: http://localhost:50682/6a663a78019845d5ade4a328cad09cc2/arterySignalR/poll?transport=longPolling&connectionToken=AQAAANCMnd8BFdERjHoAwE%2FCl%2BsBAAAAOBmDwPWa2ky2MAZXFHBMVAAAAAACAAAAAAAQZgAAAAEAACAAAADSADQXBVKiKczflJ0OzUjOLduFTJE4zd%2FLHWGpDfXnuAAAAAAOgAAAAAIAACAAAACyEX81VwilygfphPoEKCYQ6ZwrkzExoKfZzEMkqBKqqzAAAADG%2BDJbrEFOfsNm9OKhqacnGseQvrwy5kmyZnI5YJiZbjYFgzMELXHfwA7Sxjj4osJAAAAAvQvoG4N0nn8eB9FRaJaZyqaUDF%2F9ypvGN%2B%2BVefnx8U1Fq6P9HXO9vEC%2BfA2s8R4jik58rD4IcFMjM4P8l5kv6g%3D%3D&messageId=d-F1180A0E-W%2C0%7Cl%2C4%7Cm%2C0&requestUrl=http%3A%2F%2Flocalhost%3A50656%2Fdefaulttest&browserName=Firefox&tid=4&_=1384207744328 为什么这样做? 我如何阻止这些电话? 我看到每6秒对上述URL进行无限次的调用。 请帮我理解这一点,并解决这个问题。