我将SignalR添加到ASP .Net Core 2应用程序
packages
-
"Microsoft.AspNetCore.All"版本= "2.0.0"
-
"Microsoft.AspNetCore.SignalR"版本= "1.0.0-alpha2-27025"
-
"Microsoft.AspNetCore.SignalR.Client"版本= "1.0.0-alpha2-27025"
-
"Microsoft.AspNetCore.SignalR.Client.Core"版本= "1.0.0-alpha2-27025"
-
"Microsoft.AspNetCore.SignalR.Common"版本= "1.0.0-alpha2-27025"
-
"Microsoft.AspNetCore.SignalR.Core"版本= "1.0.0-alpha2-27025"
public IServiceProvider ConfigureServices(IServiceCollection services)
{
services.AddSignalRCore();
services.AddSignalR();
}
和
public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory, IServiceProvider serviceProvider)
app.UseSignalR(routes =>
{
routes.MapHub<ManageHub>("manageHub");
});
}
url:port/signalr , url:port/signalr/negotiate... 返回404
url:port/manageHub 使用"Connection ID required"返回400
我没找到.MapSignalR()
如何在ASP .Net Core中使用SignalR?
2 回答
首先,请确保您安装了SignalR for ASP.NET Core 2.0的最新官方版本
第二个关注链接How to get SignalR Working in ASP.NET Core 2
你似乎在使用旧客户端 . SignalR for ASP.NET Core不再使用
/negotiate
endpoints . 新的SignalR服务器与旧客户端不兼容,新客户端与旧的SignalR服务器不兼容 . 看看announcement和samples