5

我将 SignalR 添加到 ASP .Net Core 2 应用程序

  • "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返回 400 并带有“需要连接 ID”

我没有找到 .MapSignalR()

如何在 ASP .Net Core 中使用 SignalR?

4

2 回答 2

8

您似乎正在使用旧客户端。SignalR for ASP.NET Core 不再使用/negotiate端点。新 SignalR 服务器与旧客户端不兼容,新客户端与旧 SignalR 服务器不兼容。看看公告样品

于 2017-09-18T00:05:22.810 回答
3

首先,确保您安装了最新的SignalR for ASP.NET Core 2.0正式版

第二次点击该链接如何让 SignalR 在 ASP.NET Core 2 中工作

于 2017-09-17T21:29:25.200 回答