【问题标题】:How to do HTTP 1.1 long polling in .NET 3.5?如何在 .NET 3.5 中进行 HTTP 1.1 长轮询?
【发布时间】:2013-03-18 00:55:11
【问题描述】:
我们有一个用其他技术(不是 .NET)编写的服务器,它支持网络上的推送技术(基本上,可以承受通过 HTTP 1.1 进行的长时间轮询)。我们正在创建一个 .NET 3.5 应用程序,它应该在发生某些事件时从服务器获取推送通知(如聊天)。
是否有任何适用于 .NET 3.5 或更低版本的 .NET 框架可用作 HTTP 1.1 推送的客户端?
据我了解,它应该支持在收到消息时重新连接以及每两分钟重新连接一次。 WCF 可以解决这类任务吗?
【问题讨论】:
标签:
.net
long-polling
http-1.1
wcf-http
【解决方案1】:
WCF 确实支持 HTTP 1.1,并且有一种接收通知的异步方式,如示例 here 所述。
【解决方案2】:
SignalR 是用于各种 WebRTC 实现的绝佳平台。它从 WebSockets 开始,通过服务器发送的事件,通过彗星,长轮询,我认为它甚至可能落入闪存。当客户端和服务器协商以找到匹配项时,它会自动执行此操作。 SignalR 主要是为 .net 4+ 设计的,但 How to use SignalR with .net 3.5 有一个用于 .net 3.5 的分支,看起来很有希望。