18

将信息从服务器推送到 Web 客户端的最佳方式是什么?我知道可以使用 Silverlight 和 Flash 设置套接字,但我想远离这两种技术。

Gmail 似乎在轮询服务器以获取更新的电子邮件方面做得很好,甚至他们的聊天程序也运行良好(全部在我的网络浏览器中运行)。关于使用 asp.net 做这样的事情的最佳方法的任何想法?

编辑:如果我必须轮询,我想每 2 或 3 秒轮询一次服务器。因此,我不确定如何在不使 Web 服务器在大量使用的情况下瘫痪的情况下做到这一点。

4

6 回答 6

7

既然你提到ASP.NET你应该使用SignalR. 在此处查看我的其他答案:Facebook 等即时通知

于 2012-07-10T11:08:08.107 回答
5

您正在寻找的推送技术称为 Comet。有关一些提示,请参阅本文

于 2009-01-23T03:37:22.377 回答
4

我会创建一个脚本可调用的 Web 服务并使用JQuery

这是使用 JQuery 调用 ASP.NET (ASMX) Web 服务的一个很好的指南:

http://encosia.com/2008/03/27/using-jquery-to-consume-aspnet-json-web-services/

现在,您只需在对您的应用程序有意义的任何时间间隔轮询此 Web 服务。

此外,ASP.NET AJAX 的问题是它有点头重脚轻。通过使用 JQuery,您可以从常规的 ASP.NET Web 表单、MVC 中的视图或实际使用任何其他 Web 技术(经典 ASP、PHP 等)从客户端调用您的 Web 服务。查看,最好的 javascript 框架。:)

于 2009-01-23T03:30:45.103 回答
4

试用WebSync,一个为 .NET/IIS 构建的可扩展彗星服务器。它可以让你很好地从服务器推送数据,并超级容易地与 ASP.NET 项目集成(只需几个 web.config 条目)。

于 2010-01-10T16:36:28.117 回答
4

PokeIn是一个用于 ASP.NET 和 Mono 的反向 ajax 库。它具有各种功能,例如 .NET 到 JSON,反之亦然。您可以从这里下载示例项目

于 2010-09-21T00:32:45.743 回答
0

为此,请使用 ASP.NET 3.0/3.5,或者如果您使用的是早期版本,请使用ASP.NET Ajax。但是,您列出的两个示例都使用 Ajax 来提取信息,而不是推送信息。

于 2009-01-23T03:23:16.353 回答