bha*_*gav 8 html5 asp.net-mvc-3 signalr
我在大进退两难,使用HTML5 WebSockets的或signalR聊了一会,我们将融入我们的asp.net MVC3应用
我的困境1.
为什么使用signalR如果实现longpolling?
2.Isnt longpolling不好?
3.websockets和longpolling完全不同?
4. 只有IIS8支持websockets?
5.我可以使用Html5 websockets将聊天数据保存到SQL数据库中吗?
6.Isnt有一种解决方法,使WebSockets的IIS7上和更高版本的工作(我将只使用Chrome浏览器),
感谢您与我的轴承
Pav*_*l K 11
如果它实现longpolling,为什么要使用signalR?
答案:支持旧浏览器或对数据传输实现细节进行更高级别的抽象.如果你肯定会使用支持websockets的chrome版本 - 使用websockets(这里有很好的解释).
不是很糟糕吗?
答:实际上它不是最好的(参见上面的链接),但对于旧浏览器来说总比没有好.
websockets和longpolling完全不同?
答:它们是完全不同的(再次,见上面的答案),但它们有共同点(它们都需要连接).
只有IIS8支持websockets?
答:如果你想使用纯.NET框架 - 是的,只有IIS 8和.NET 4.5.但您可以使用其他websockets服务器(请参阅下面的解决方法).
我可以使用Html5 websockets将聊天数据保存到SQL数据库中吗?
答:websockets只是一个发送数据的协议,因此从字面上使用它除了传输数据外不能执行任何操作.但是,您可以使用将要发送到服务器的令牌,这意味着"将所有以前的数据保存到数据库".或者您可以根据不同类型的消息(例如socket.io中为node.js添加的消息)创建更复杂的场景.
没有解决方法使websockets在IIS7及更高版本上运行(我将仅使用chrome浏览器)
答案 - 是的,只是不使用IIS,但是另一个websockets服务器实现(例如Fleck - 对支持webseckets的"旧"浏览器有很好的支持)并将其作为一个单独的进程与IIS一起运行.
如果IIS和您的浏览器支持,则SignalR可以支持websockets,如果不使用longpolling.使用SignalR将为您节省大量时间重新发明轮子,他们已经证明您可以使用它创建一个好的聊天网站.