【发布时间】:2012-10-27 08:51:36
【问题描述】:
要求:当新通知到达时,我们必须向客户端推送消息。几乎就像消息通知或广播一样。它可能适用于多个用户。
在 ASP.NET Web 应用程序中需要它。
有什么解决办法吗?
【问题讨论】:
标签: c# javascript asp.net notifications broadcasting
要求:当新通知到达时,我们必须向客户端推送消息。几乎就像消息通知或广播一样。它可能适用于多个用户。
在 ASP.NET Web 应用程序中需要它。
有什么解决办法吗?
【问题讨论】:
标签: c# javascript asp.net notifications broadcasting
技术上最合适的解决方案就是:web-sockets。它们正是为此而设计的,这也是大多数具有实时要求的主要站点喜欢的工作方式。这确实是 stackoverflow 上的实时更新的工作方式。这里的小故障是某些浏览器(好的,IE)不支持它们 - 所以如果更新很重要,你需要一个后备。
下一个选项是长轮询和重复轮询。两者都有效。
周围有一些工具支持所有可行的选项,并自动选择最合适的选项,抽象出交付机制。 SignalR 就是这样一个工具。
如果这是一个不错的选择,我会说 web-sockets。如果需要,可以使用 web-sockets-plus-polling-fallback 或 SignalR 之类的东西。
【讨论】:
一种方法是使用Ajax 来完成此功能....
如果有新通知到达,请使用 Classic Ajax 获取响应...在每个时间间隔后调用 SetTimeOut 以不断调用此 ajax 函数...如果有任何新通知到达,您将在您的 ajax 响应中得到它....如果在那里,您可以使用此响应以任何您想要的方式向客户展示它...您可以在http://www.w3schools.com/ajax/ajax_xmlhttprequest_send.asp 了解更多关于 Ajax 的信息
【讨论】: