SignalR Irequest 用户为空

SignalR Irequest User is null

我遵循了这个答案,但我在 Irequest 中得到了 Null request.User

SignalR - Sending a message to a specific user using (IUserIdProvider) *NEW 2.0.0*

我在 app_start 文件夹中创建了一个 class,就像这样

public class CustomUserIdProvider : IUserIdProvider
    {
        public string GetUserId(IRequest request)
        {
            // your logic to fetch a user identifier goes here.

            // for example:

            var userId = request.User.Identity.Name;
            return userId.ToString();
        }
    }

在此之后,我在 Startup.cs 中初始化新的 costom 提供程序,如下所示:

 public void Configuration(IAppBuilder app)
        {
            var idProvider = new CustomUserIdProvider();

            GlobalHost.DependencyResolver.Register(typeof(IUserIdProvider), () => idProvider);

            // Any connection or hub wire up and configuration should go here
            app.MapSignalR();
         }

但是我在线上遇到异常

var userId = request.User.Identity.Name;
System.NullReferenceException: 'Object reference not set to an instance of an object.'

发现问题, 我必须在 startup.cs

结束时进行初始化
app.MapSignalR();