在asp.net中,如何从服务器触发客户端jquery事件。我想在我的聊天区实现它..。现在聊天好像很好..。但有一个问题..。我必须每5秒从客户端的浏览器发送一个请求到他的聊天记录。我觉得这不是个好主意..。
有人能为我的问题提供任何解决方案吗?
发布于 2011-04-21 13:07:54
默认情况下,您需要从客户端浏览器进行轮询。这就是ajax的工作方式。有一种叫做Comet的技术,它是一个推模型。
您可以尝试使用这样的jQuery插件:http://plugins.jquery.com/project/jQuery-Comet-Push-API。
在不久的将来,您也可以在websockets和HTML5中使用它。以下是从http://channel9.msdn.com/Events/MIX/MIX11/HTM10获取的信息。
WebSockets是W3C和IETF正在标准化的一个新兴规范,它将使web浏览器和客户端应用程序能够与远程主机打开双向、全双工通信通道。
一定要检查一下那个MIX11视频!
发布于 2011-04-21 13:06:54
您正在尽您所能地做到最好,而不必进入诸如HTML5 WebSockets之类的东西,因为这些东西还没有真正准备好用于常规使用。
有两种选择:
的新库。
发布于 2011-04-21 13:21:56
欢迎来到HTTP世界。
浏览器就是这样工作的。客户端向服务器发送请求,服务器响应。(目前)没有别的办法去走另一条路。这很简单,这也是HTTP协议如此流行的原因之一。
但现在情况正在改变,HTML5支持网络套接字。如果您开发一个HTML5支持设备(所有浏览器的最新版本+ iPhone/iPad支持套接字),那么websockets就是最好的选择。
另一方面,您可以使用Comet轮询(如XIII所述)。基本上,它的客户端向服务器发送请求,并等待直到服务器有任何响应。我不太确定在ASP.NET中实现它的好方法是什么(因为我认为并发连接是有限制的),但是在Nodejs中它是一种非常有用的技术。
https://stackoverflow.com/questions/5744473
复制相似问题