【问题标题】:asp.net 5 web application with websockets on Windows 7在 Windows 7 上带有 websockets 的 asp.net 5 Web 应用程序
【发布时间】:2015-06-03 22:14:28
【问题描述】:

我有一个相对简单的 Web 应用程序,我目前正在移植到 asp.net 5。当前版本在一些 Windows 7 和 Server 2008 机器上的 IIS 下运行。 在我的软件的下一个版本中,我想通过 SignalR 将 C++ 客户端连接到 Web 应用程序。问题是当前版本的新 Signalr-Cpp 客户端仅通过 websockets 支持 SignalR。 不过,Windows 7 和 Server 2008 上的 IIS 不支持 websocket。 由于自托管解决方案对我来说很好,我的问题是:

当网络应用程序自托管时,是否可以在 Windows 7 / Server 2008 上通过 websockets 支持 Signalr?

更新:

我会接受 does self hosted signalr require windows server 2012 in order to use websockets? 作为答案,如果 Damian Edwards 在下面的 Tweet by David Fowler 中没有这个小评论,则表示

尽管使用 v3,在自托管服务器(如 Katana)中的 websockets 是可能的

这会改变情况吗?

最终更新

至少在 beta 6 中,当使用 Kestrel 托管应用程序并包括中间件 Microsoft.AspNet.WebSockets.Server 时,它可以在 Windows 7 上运行。

【问题讨论】:

标签: websocket signalr asp.net-core


【解决方案1】:

这不可能……

SignalR Supported Platforms

对于 SignalR 使用 WebSockets,Windows Server 2012 或 Windows 8 是 必填

Does self hosted signalr require windows server 2012 in order to use websockets

Windows 8/2012 之前的 HTTP.SYS has no built in support 用于 WebSockets,因此尽管 .NET 4.5 包含 WebSocket 类,但它们 除非您在 Windows 8/2012 上运行 .NET 4.5+ 并且 将影响在 Windows

更新: 我的回答对 SignalR (2.2) 的当前版本有效。您包含的推文(相当老的顺便说一句)表明这在 v3 中是可能的,但它尚未发布,互联网上没有太多关于此版本的更改\功能的信息,我什至在 Win 上的 Katana 中找不到任何关于 WebSocket 支持的信息list of Github issues for v3

【讨论】:

  • 好的,我接受这个作为答案,因为它对当前版本有效。我将尝试使用 asp.net 5 和 signalr 3 制作测试应用程序,看看这在新版本中是否仍然有效。
  • 我对你的发现很感兴趣...... :)
  • 发现:使用 Kestrel 托管应用程序,包括 Microsoft.AspNet.WebSockets.Server 并在 Configure() 中调用 app.UseWebSockets()。这适用于 Windows 7 上的 ASP.NET5 beta 6 :-)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-02-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多