Signalr 信号器版本兼容性(状态代码:405';方法不允许';)

Signalr 信号器版本兼容性(状态代码:405';方法不允许';),signalr,version,signalr-hub,signalr.client,asp.net-core-signalr,Signalr,Version,Signalr Hub,Signalr.client,Asp.net Core Signalr,我对目前正在进行的一个信号机项目有意见。我正在尝试使用.Net核心构建服务器,使用传统的.Net(framework 4.6.1)构建客户端。但是,服务器和客户端似乎不兼容 我遇到的最后一个问题是状态码:405,原因短语:“方法不允许”。我发现了一个答案,即版本之间有很多突破性的变化 看看可用的NuGet软件包版本,我会更加困惑。对于.Net核心服务器,我使用1.0.0-preview1-final。还有一个1.0.0-alpha2-final可用,但我不知道“alpha”是比“preview”

我对目前正在进行的一个信号机项目有意见。我正在尝试使用.Net核心构建服务器,使用传统的.Net(framework 4.6.1)构建客户端。但是,服务器和客户端似乎不兼容

我遇到的最后一个问题是状态码:405,原因短语:“方法不允许”。我发现了一个答案,即版本之间有很多突破性的变化

看看可用的NuGet软件包版本,我会更加困惑。对于.Net核心服务器,我使用1.0.0-preview1-final。还有一个1.0.0-alpha2-final可用,但我不知道“alpha”是比“preview”新还是旧

在客户端,我使用的是版本2.2.2,有很多版本可供选择,我尝试了最旧和最新的版本,但两个版本都给出了相同的“方法不允许”错误

错误在客户端,在服务器端,我的断点甚至没有被命中,因此它可能也是Owin/iis问题


是否有任何图表可以映射SignalR客户端和服务器版本的兼容性?我想这将是向前迈出的一大步。

您不能将.NET Core 1.x与旧客户端(1.x或2.x)混合使用。您需要决定哪一个是最适合您的选项,但您需要在客户端和服务器上实现相同的兼容版本

查看以了解更多详细信息,但本质上:

发生了什么变化

我们为SignalR for ASP.NET Core添加了许多新功能,但我们 还决定删除对某些现有功能的支持或 改变他们的工作方式。这样做的后果之一就是信号员 for ASP.NET Core与Signal的早期版本不兼容。 这意味着您不能将旧服务器与新客户端一起使用,也不能将旧客户端与新服务器一起使用。


该文档没有说明哪些版本是兼容的。最新的NPM软件包()说“1.0.0-alpha2-final是5个月前发布的两个版本中的最新版本”,而aspnetcore版本()是9天前发布的“1.0.0-preview1-final”。我认为他们的GitHub页面()澄清了它在Packages下的声明:注意:以前JavaScript的SignalR客户端库的预览名为@aspnet/SignalR client。从预览版1开始,这已被弃用。啊!在我开始之前我应该问一下。。。谢谢。我知道太多“谢谢”的问题会被锁定。。。但是太糟糕了!!非常感谢。为什么他们不把.Net核心版本称为3.0而不是从1.0开始呢。我还是很失望。这意味着我们不能利用.Net Core提供新服务,因为我们现有的应用程序(将成为客户端)不是.Net Core应用程序。是否有人正在以任何一种方式进行移植,或者我必须在为新服务放弃Signal或.Net Core之间做出选择?